+
+StartNoticeWhoGets: Called at start of inbox delivery prep; plugins can schedule notices to go to particular profiles that would otherwise not have reached them. Canceling will take over the entire addressing operation. Be aware that output can be cached or used several times, so should remain idempotent.
+- $notice Notice
+- &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
+
+EndNoticeWhoGets: Called at end of inbox delivery prep; plugins can filter out profiles from receiving inbox delivery here. Be aware that output can be cached or used several times, so should remain idempotent.
+- $notice Notice
+- &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
+
+StartDefaultLocalNav: When showing the default local nav
+- $menu: the menu
+- $user: current user
+
+EndDefaultLocalNav: When showing the default local nav
+- $menu: the menu
+- $user: current user
+
+StartShowAccountProfileBlock: When showing the profile block for an account
+- $out: XMLOutputter to append custom output
+- $profile: the profile being shown
+
+EndShowAccountProfileBlock: After showing the profile block for an account
+- $out: XMLOutputter to append custom output
+- $profile: the profile being shown
+
+StartShowGroupProfileBlock: When showing the profile block for a group
+- $out: XMLOutputter to append custom output
+- $profile: the profile being shown
+
+EndShowGroupProfileBlock: After showing the profile block for a group
+- $out: XMLOutputter to append custom output
+- $group: the group being shown
+
+StartShowConversation: start the listing of a conversation
+- $action: Action object (used mainly as HTMLOutputter)
+- $conv: Conversation object, has functions to retrieve relevant notices
+- $scoped: Profile for scoping (null if not logged in)
+
+EndShowConversation: after the listing of a conversation
+- $action: Action object (used mainly as HTMLOutputter)
+- $conv: Conversation object, has functions to retrieve relevant notices
+- $scoped: Profile for scoping (null if not logged in)
+
+StartShowThreadedNoticeTail: when showing the replies etc. to a notice
+- $nli: parent noticelistitem
+- $notice: parent notice
+- &$children: list of children
+
+EndShowThreadedNoticeTail: when showing the replies etc. to a notice
+- $nli: parent noticelistitem
+- $notice: parent notice
+- $children: list of children
+
+StartShowThreadedNoticeSub: when showing a reply to a notice
+- $nli: parent noticelistitem
+- $parent: parent notice
+- $child: child notice
+
+EndShowThreadedNoticeSub: when showing a reply to a notice
+- $nli: parent noticelistitem
+- $parent: parent notice
+- $child: child notice
+
+StartAddEmailAddress: when adding an email address through the Web UI
+- $user: user getting the new address
+- $email: email being added
+
+EndAddEmailAddress: done adding an email address through the Web UI
+- $user: user getting the new address
+- $email: email being added
+
+StartValidateEmailInvite: when validating an email address for invitations
+- $user: user doing the invite
+- $email: email address
+- &$valid: flag for if it's valid; can be modified
+
+EndValidateEmailInvite: after validating an email address for invitations
+- $user: user doing the invite
+- $email: email address
+- &$valid: flag for if it's valid; can be modified
+
+StartLocalURL: before resolving a local url for an action
+- &$action: action to find a path for
+- &$paramsi: parameters to pass to the action
+- &$fragment: any url fragement
+- &$addSession: whether to add session variable
+- &$url: resulting URL to local resource
+
+EndLocalURL: before resolving a local url for an action
+- &$action: action to find a path for
+- &$paramsi: parameters to pass to the action
+- &$fragment: any url fragement
+- &$addSession: whether to add session variable
+- &$url: resulting URL to local resource
+
+StartProfileGetAvatar: When getting an avatar for a profile
+- $profile: profile
+- $size: size of the avatar
+- &$avatar: avatar
+
+EndProfileGetAvatar: After getting an avatar for a profile
+- $profile: profile
+- $size: size of the avatar
+- &$avatar: avatar
+
+StartRegisterSuccess: Before showing the registration success message
+- $action: the registration action
+
+StartRegisterSuccess: After showing the registration success message
+- $action: the registration action
+
+StartDocFileForTitle: Before searching for a doc or mail template
+- $title: Title we're looking for
+- &$paths: Paths we're searching
+- &$filename: Filename so far (set this if you want)
+
+EndDocFileForTitle: After searching for a doc or mail template
+- $title: Title we looked for
+- $paths: Paths we searched
+- &$filename: Filename so far (set this if you want)
+
+StartReadWriteTables: when noting which tables must be read-write, even on read-only actions
+- &$tables: list of table names
+- &$rwdb: read-write database URI
+
+EndReadWriteTables: after noting which tables must be read-write, even on read-only actions
+- $tables: list of table names
+- $rwdb: read-write database URI
+
+StartShowInviteForm: Right before displaying the invitations form
+- $action: invitation action
+
+EndShowInviteForm: After displaying the invitations form
+- $action: invitation action
+
+StartSendInvitations: Right before sending invitations
+- $action: invitation action
+
+EndSendInvitations: Right after sending invitations
+- $action: invitation action
+
+StartShowInvitationSuccess: Right before showing invitations success msg
+- $action: invitation action
+
+EndShowInvitationSuccess: After showing invitations success msg
+- $action: invitation action
+
+StartUpgrade: when starting a site upgrade
+
+EndUpgrade: when ending a site upgrade; good place to do your own upgrades
+
+HaveIMPlugin: is there an IM plugin loaded?
+- &$haveIMPlugin: set me to true if you're loaded!
+
+StartShowNoticeOptionItems: Before showing first controls in a notice list item; inside the div
+- $nli: NoticeListItem being shown
+
+EndShowNoticeOptionItems: After showing last controls in a notice list item; inside the div
+- $nli: NoticeListItem being shown
+
+StartNoticeInScope: Before checking if a notice should be visible to a user
+- $notice: The notice to check
+- $profile: The profile to check for scope
+- &$bResult: The boolean result; fill this in if you want to skip
+
+EndNoticeInScope: After checking if a notice should be visible to a user
+- $notice: The notice to check
+- $profile: The profile to check for scope
+- &$bResult: The boolean result; overwrite this if you so desire
+
+StartNoticeListPrefill: Before pre-filling a list of notices with extra data
+- &$notices: Notices to be pre-filled
+- $avatarSize: The avatar size for the list
+
+EndNoticeListPrefill: After pre-filling a list of notices with extra data
+- &$notices: Notices that were pre-filled
+- &$profiles: Profiles that were pre-filled
+- $avatarSize: The avatar size for the list
+
+OtherAccountProfiles: Hook to add account profiles to a user account profile block
+- $profile: the Profile being shown
+- &$others: Modifiable array of profile info arrays. Each one has the following fields:
+ href: link to the profile
+ text: text for the profile
+ image: mini image for the profile
+
+CreateFileImageThumbnailSource: Hook to create image thumbnail source from a File
+- $file: 'File' object to source the image from
+- &$imgPath: Path to image file which can be used as source for our thumbnail algorithm.
+- $media: MIME media type ('image', 'video', 'audio' etc.)
+
+StartResizeImageFile: Hook to resize an image and output it to a file. No matching End event yet.
+- $imagefile: ImageFile object we're resizing.
+- $outpath: string with output filepath
+- $box: array with size ('width', 'height') and boundary box('x', 'y', 'w', 'h').
+
+FillImageFileMetadata: Get more metadata about the ImageFile if it is perhaps not a real local file
+- $imagefile ImageFile object which we're getting metadata for (such as animated status, width/height etc.)
+
+StartShowAttachmentRepresentation: Attachment representation, full file (or in rare cases thumbnails/previews).
+- $out: HTMLOutputter class to use for outputting HTML.
+- $file: 'File' object which we're going to show representation for.
+
+EndShowAttachmentRepresentation: Executed after Attachment representation, despite perhaps being unsupported media.
+- $out: HTMLOutputter class to use for outputting HTML.
+- $file: 'File' object which we're going to show representation for.
+
+ShowUnsupportedAttachmentRepresentation: Attachment representation, full file (or in rare cases thumbnails/previews).
+- $out: HTMLOutputter class to use for outputting HTML.
+- $file: 'File' object which we're going to show representation for.
+
+StartNotifyMentioned: 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.
+
+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