1 InitializePlugin: a chance to initialize a plugin in a complete environment
3 CleanupPlugin: a chance to cleanup a plugin at the end of a program
5 StartPrimaryNav: Showing the primary nav menu
6 - $action: the current action
8 EndPrimaryNav: At the end of the primary nav menu
9 - $action: the current action
11 StartSecondaryNav: Showing the secondary nav menu
12 - $action: the current action
14 EndSecondaryNav: At the end of the secondary nav menu
15 - $action: the current action
17 StartShowStyles: Showing Style links; good place to add UA style resets
18 - $action: the current action
20 EndShowStyles: End showing Style links; good place to add custom styles
21 - $action: the current action
23 StartShowStylesheets: Showing stylesheet links
24 - $action: the current action
26 EndShowStylesheets: End showing stylesheet links; good place to add handheld or JavaScript dependant styles
27 - $action: the current action
29 StartShowUAStyles: Showing custom User-Agent style links
30 - $action: the current action
32 EndShowUAStyles: End showing custom User-Agent links; good place to add user-agent (e.g., filter, -webkit, -moz) specific styles
33 - $action: the current action
35 StartShowScripts: Showing JavaScript links
36 - $action: the current action
38 EndShowScripts: End showing JavaScript links; good place to add custom
39 links like Google Analytics
40 - $action: the current action
42 StartShowJQueryScripts: Showing JQuery script links (use this to link to e.g. Google mirrors)
43 - $action: the current action
45 EndShowJQueryScripts: End showing JQuery script links
46 - $action: the current action
48 StartShowStatusNetScripts: Showing StatusNet script links (use this to link to a CDN or something)
49 - $action: the current action
51 EndShowStatusNetScripts: End showing StatusNet script links
52 - $action: the current action
54 StartShowSections: Start the list of sections in the sidebar
55 - $action: the current action
57 EndShowSections: End the list of sections in the sidebar
58 - $action: the current action
60 StartShowHeader: Showing before the header container
61 - $action: the current action
63 EndShowHeader: Showing after the header container
64 - $action: the current action
66 StartShowFooter: Showing before the footer container
67 - $action: the current action
69 EndShowFooter: Showing after the footer container
70 - $action: the current action
72 StartShowContentBlock: Showing before the content container
73 - $action: the current action
75 EndShowContentBlock: Showing after the content container
76 - $action: the current action
78 StartShowAside: Showing before the Aside container
79 - $action: the current action
81 EndShowAside: Showing after the Aside container
82 - $action: the current action
84 StartShowNoticeFormData: Showing before the notice form data
85 - $action: the current action
87 EndShowNoticeFormData: Showing after the notice form data
88 - $action: the current action
90 StartNoticeSave: before inserting a notice (good place for content filters)
91 - $notice: notice being saved (no ID or URI)
93 EndNoticeSave: after inserting a notice and related code
94 - $notice: notice that was saved (with ID and URI)
96 StartShowLocalNavBlock: Showing the local nav menu
97 - $action: the current action
99 EndShowLocalNavBlock: At the end of the local nav menu
100 - $action: the current action
102 StartShowHTML: Chance to set document headers (e.g., content type, charset, language), DOCTYPE and html element properties
103 - $action: the current action
105 EndShowHTML: Showing after the html element
106 - $action: the current action
108 StartPublicGroupNav: Showing the public group nav menu
109 - $menu: the menu widget; use $menu->action for output
111 EndPublicGroupNav: At the end of the public group nav menu
112 - $menu: the menu widget; use $menu->action for output
114 StartSubGroupNav: Showing the subscriptions group nav menu
115 - $menu: the menu widget; use $menu->action for output
117 EndSubGroupNav: At the end of the subscriptions group nav menu
118 - $menu: the menu widget; use $menu->action for output
120 StartInitializeRouter: Before the router instance has been initialized; good place to add routes
121 - $m: the Net_URL_Mapper that has just been set up
123 RouterInitialized: After the router instance has been initialized
124 - $m: the Net_URL_Mapper that has just been set up
126 StartLogout: Before logging out
127 - $action: the logout action
129 EndLogout: After logging out
130 - $action: the logout action
132 ArgsInitialize: After the argument array has been initialized
133 - $args: associative array of arguments, can be modified
135 StartAddressData: Allows the site owner to provide additional information about themselves for contact (e.g., tagline, email, location)
136 - $action: the current action
138 EndAddressData: At the end of <address>
139 - $action: the current action
141 StartShowSiteNotice: Before showing site notice
142 - $action: the current action
144 EndShowSiteNotice: After showing site notice
145 - $action: the current action
147 StartLoginGroupNav: Before showing the login and register navigation menu
148 - $action: the current action
150 EndLoginGroupNav: After showing the login and register navigation menu
151 - $action: the current action
153 StartAccountSettingsNav: Before showing the account settings menu
154 - $action: the current action
156 EndAccountSettingsNav: After showing the account settings menu
157 - $action: the current action
159 StartAccountSettingsProfileMenuItem: Before showing the Profile menu item
160 - $widget: AccountSettingsNav instance being shown
162 EndAccountSettingsProfileMenuItem: After showing the Profile menu item
163 - $widget: AccountSettingsNav instance being shown
165 StartAccountSettingsAvatarMenuItem: Before showing the Avatar menu item
166 - $widget: AccountSettingsNav instance being shown
168 EndAccountSettingsAvatarMenuItem: After showing the Avatar menu item
169 - $widget: AccountSettingsNav instance being shown
171 StartAccountSettingsPasswordMenuItem: Before showing the Password menu item
172 - $widget: AccountSettingsNav instance being shown
174 EndAccountSettingsPasswordMenuItem: After showing the Password menu item
175 - $widget: AccountSettingsNav instance being shown
177 StartAccountSettingsEmailMenuItem: Before showing the Email menu item
178 - $widget: AccountSettingsNav instance being shown
180 EndAccountSettingsEmailMenuItem: After showing the Email menu item
181 - $widget: AccountSettingsNav instance being shown
183 StartAccountSettingsDesignMenuItem: Before showing the Design menu item
184 - $widget: AccountSettingsNav instance being shown
186 EndAccountSettingsDesignMenuItem: After showing the Design menu item
187 - $widget: AccountSettingsNav instance being shown
189 StartAccountSettingsOtherMenuItem: Before showing the Other menu item
190 - $widget: AccountSettingsNav instance being shown
192 EndAccountSettingsOtherMenuItem: After showing the Other menu item
193 - $widget: AccountSettingsNav instance being shown
195 Autoload: When trying to autoload a class
196 - $cls: the class being sought. A plugin might require_once the file for the class.
198 SensitiveAction: determines if an action is 'sensitive' and should use SSL
199 - $action: name of the action, like 'login'
200 - $sensitive: flag for whether this is a sensitive action
202 LoginAction: determines if an action is a 'login' action (OK for public view in private mode)
203 - $action: name of the action, like 'register'
204 - $login: flag for whether this is a login action
206 StartShowHead: called before showing the <head> element and children
207 - $action: action object being show
209 EndShowHead: called after showing the <head> element (and </head>)
210 - $action: action object being shown
212 StartShowBody: called before showing the <body> element and children
213 - $action: action object being shown
215 EndShowBody: called after showing the <body> element (and </body>)
216 - $action: action object being shown
218 StartPersonalGroupNav: beginning of personal group nav menu
219 - $action: action object being shown
221 EndPersonalGroupNav: end of personal group nav menu (good place to add a menu item)
222 - $action: action object being shown
224 StartGroupGroupNav: Showing the group nav menu
225 - $action: the current action
227 EndGroupGroupNav: At the end of the group nav menu
228 - $action: the current action
230 StartEndHTML: just before the </html> tag
231 - $action: action object being shown
233 EndEndHTML: just after the </html> tag
234 - $action: action object being shown
236 FinalAction: After prepare() (and possible handle) in Action class.
237 - $status: result of "prepare" call on action
238 - $action: Action that is currently running
240 StartShowDesign: just before showing a site, user, or group design
241 - $action: action object being shown
243 EndShowDesign: just after showing a site, user, or group design
244 - $action: action object being shown
246 StartShowExportData: just before showing the <div> with export data (feeds)
247 - $action: action object being shown
249 EndShowExportData: just after showing the <div> with export data (feeds)
250 - $action: action object being shown
252 StartShowNoticeItem: just before showing the notice item
253 - $item: The NoticeListItem object being shown
255 EndShowNoticeItem: just after showing the notice item
256 - $item: the NoticeListItem object being shown
258 StartShowNoticeInfo: just before showing notice info
259 - $item: The NoticeListItem object being shown
261 EndShowNoticeInfo: just after showing notice info
262 - $item: The NoticeListItem object being shown
264 StartShowNoticeOptions: just before showing notice options like fave, repeat, etc.
265 - $item: the NoticeListItem object being shown
267 EndShowNoticeOptions: just after showing notice options like fave, repeat, etc.
268 - $item: the NoticeListItem object being shown
270 StartShowFaveForm: just before showing the fave form
271 - $item: the NoticeListItem object being shown
273 EndShowFaveForm: just after showing the fave form
274 - $item: the NoticeListItem object being shown
276 StartShowPageNotice: just before showing the page notice (instructions or error)
277 - $action: action object being shown
279 EndShowPageNotice: just after showing the page notice (instructions or error)
280 - $action: action object being shown
282 StartShowPageTitle: just before showing the main h1 title of a page (only for registration)
283 - $action: action object being shown
285 StartProfileFormData: just before showing text entry fields on profile settings page
286 - $action: action object being shown
288 EndProfileFormData: just after showing text entry fields on profile settings page
289 - $action: action object being shown
291 StartProfileSaveForm: before starting to save a profile settings form
292 - $action: action object being shown
294 EndProfileSaveForm: after saving a profile settings form (after commit, no profile or user object!)
295 - $action: action object being shown
297 StartEmailFormData: just before showing text entry fields on email settings page
298 - $action: action object being shown
300 EndEmailFormData: just after showing text entry fields on email settings page
301 - $action: action object being shown
303 StartEmailSaveForm: before starting to save a email settings form
304 - $action: action object being shown
305 - &$user: user being saved
307 EndEmailSaveForm: after saving a email settings form (after commit)
308 - $action: action object being shown
309 - &$user: user being saved
311 StartRegistrationFormData: just before showing text entry fields on registration page
312 - $action: action object being shown
314 EndRegistrationFormData: just after showing text entry fields on registration page
315 - $action: action object being shown
317 StartRegistrationTry: before validating and saving a new user
318 - $action: action object being shown
320 EndRegistrationTry: after saving a new user (note: no profile or user object!)
321 - $action: action object being shown
323 StartAvatarFormData: before displaying avatar form
324 - $action: action object being shown
326 EndAvatarFormData: after displaying avatar form
327 - $action: action object being shown
329 StartAvatarSaveForm: before saving the avatar
330 - $action: action object being shown
332 EndAvatarSaveForm: after saving the avatar
333 - $action: action object being shown
335 StartNewQueueManager: before trying to start a new queue manager; good for plugins implementing new queue manager classes
336 - $qm: empty queue manager to set
338 RedirectToLogin: event when we force a redirect to login (like when going to a settings page on a remembered login)
339 - $action: action object being shown
340 - $user: current user
342 StartLoadDoc: before loading a help doc (hook this to show your own documentation)
343 - $title: title of the document
344 - $output: HTML output to show
346 EndLoadDoc: after loading a help doc (hook this to modify other documentation)
347 - $title: title of the document
348 - $output: HTML output to show
350 StartApiRss: after the rss <channel> element is started
351 - $action: action object being shown
353 StartApiAtom: after the <feed> element is started
354 - $action: action object being shown
356 StartEnqueueNotice: about to add a notice to the queues (good place to add a new transport)
357 - $notice: the notice being added
358 - &$transports: modifiable list of transports (as strings) to queue for
360 EndEnqueueNotice: after adding a notice to the queues
361 - $notice: the notice being added
362 - $transports: modifiable list of transports to use
364 UnqueueHandleNotice: Handle a notice when no queue manager is available
365 - $notice: the notice to handle
366 - $queue: the "queue" that is being executed
368 GetValidDaemons: Just before determining which daemons to run
369 - &$daemons: modifiable list of daemon scripts to run, filenames relative to scripts/
371 HandleQueuedNotice: Handle a queued notice at queue time (or immediately if no queue)
372 - &$notice: notice to handle
374 StartHtmlElement: Reight before outputting the HTML element - allows plugins to add namespaces
375 - $action: the current action
376 - &$attrs: attributes for the HTML element
378 EndHtmlElement: Right after outputting the HTML element
379 - $action: the current action
380 - &$attrs: attributes for the HTML element
382 StartShowHeadElements: Right after the <head> tag
383 - $action: the current action
385 EndShowHeadElements: Right before the </head> tag; put <script>s here if you need them in <head>
386 - $action: the current action
388 CheckSchema: chance to check the schema
390 StartProfileRemoteSubscribe: Before showing the link to remote subscription
391 - $userprofile: UserProfile widget
392 - &$profile: the profile being shown
394 EndProfileRemoteSubscribe: After showing the link to remote subscription
395 - $userprofile: UserProfile widget
396 - &$profile: the profile being shown
398 StartGroupSubscribe: Before showing the link to remote subscription
399 - $action: the current action
400 - $group: the group being shown
402 EndGroupSubscribe: After showing the link to remote subscription
403 - $action: the current action
404 - $group: the group being shown
406 StartProfilePageProfileSection: Starting to show the section of the
407 profile page with the actual profile data;
408 hook to prevent showing the profile (e.g.)
409 - $userprofile: UserProfile widget
410 - &$profile: the profile being shown
412 StartProfilePageProfileElements: inside the section, before the first
413 element; prepend elements here
414 - $userprofile: UserProfile widget
415 - &$profile: the profile being shown
417 EndProfilePageProfileElements: inside the section, after the last element;
419 - $userprofile: UserProfile widget
420 - &$profile: the profile being shown
422 EndProfilePageProfileSection: After showing the section of the profile
423 page with the profile elements
424 - $userprofile: UserProfile widget
425 - &$profile: the profile being shown
427 StartProfilePageActionsSection: Starting to show the section of the
428 profile page with action links; hook
429 to hide them (for example)
430 - $userprofile: UserProfile widget
431 - &$profile: the profile being shown
433 StartProfilePageActionsElements: inside the list, before the first
434 element; prepend elements here
435 - $userprofile: UserProfile widget
436 - &$profile: the profile being shown
438 EndProfilePageActionsElements: inside the list, after the last element;
440 - $userprofile: UserProfile widget
441 - &$profile: the profile being shown
443 EndProfilePageActionsSection: After showing the section of the profile
444 page with the entity actions
445 - $userprofile: UserProfile widget
446 - &$profile: the profile being shown
448 StartProfilePageAvatar: before showing the avatar on the profile page
449 - $userprofile: UserProfile widget
450 - &$profile: the profile being shown
452 EndProfilePageAvatar: after showing the avatar on the profile page
453 - $userprofile: UserProfile widget
454 - &$profile: the profile being shown
456 StartProfilePageNickname: before showing the nickname on the profile page
457 - $userprofile: UserProfile widget
458 - &$profile: the profile being shown
460 EndProfilePageNickname: after showing the nickname on the profile page
461 - $userprofile: UserProfile widget
462 - &$profile: the profile being shown
464 StartProfilePageFullName: before showing the fullname on the profile page
465 - $userprofile: UserProfile widget
466 - &$profile: the profile being shown
468 EndProfilePageFullName: after showing the fullname on the profile page
469 - $userprofile: UserProfile widget
470 - &$profile: the profile being shown
472 StartProfilePageLocation: before showing the location on the profile page
473 - $userprofile: UserProfile widget
474 - &$profile: the profile being shown
476 EndProfilePageLocation: after showing the location on the profile page
477 - $userprofile: UserProfile widget
478 - &$profile: the profile being shown
480 StartProfilePageHomepage: before showing the homepage link on the profile page
481 - $userprofile: UserProfile widget
482 - &$profile: the profile being shown
484 EndProfilePageHomepage: after showing the homepage on the profile page
485 - $userprofile: UserProfile widget
486 - &$profile: the profile being shown
488 StartProfilePageBio: before showing the bio on the profile page
489 - $userprofile: UserProfile widget
490 - &$profile: the profile being shown
492 EndProfilePageBio: after showing the bio on the profile page
493 - $userprofile: UserProfile widget
494 - &$profile: the profile being shown
496 StartProfilePageProfileTags: before showing the tags on the profile page
497 - $userprofile: UserProfile widget
498 - &$profile: the profile being shown
500 EndProfilePageProfileTags: after showing the tags on the profile page
501 - $userprofile: UserProfile widget
502 - &$profile: the profile being shown
504 StartProfileList: when starting a list of profiles (before <ul>)
505 - $profilelist: ProfileList widget, with $profile, $action, and $out
507 EndProfileList: when ending a list of profiles (after </ul>)
508 - $profilelist: ProfileList widget
510 StartProfileListItem: when starting to show a profile list item
511 - $item: ProfileListItem widget
513 EndProfileListItem: after showing a profile list item
514 - $item: ProfileListItem widget
516 StartProfileListItemProfile: the profile data part of the item
517 - $item: ProfileListItem widget
519 EndProfileListItemProfile: the profile data part of the item
520 - $item: ProfileListItem widget
522 StartProfileListItemActions: the actions (buttons) for an item
523 - $item: ProfileListItem widget
525 EndProfileListItemActions: the actions (buttons) for an item
526 - $item: ProfileListItem widget
528 StartProfileListItemProfileElements: inside the <div>
529 - $item: ProfileListItem widget
531 EndProfileListItemProfileElements: inside the <div>
532 - $item: ProfileListItem widget
534 StartProfileListItemAvatar: Showing a profile list avatar
535 - $item: ProfileListItem widget
537 EndProfileListItemAvatar: Showing a profile list avatar
538 - $item: ProfileListItem widget
540 StartProfileListItemFullName: Showing the profile list full name
541 - $item: ProfileListItem widget
543 EndProfileListItemFullName: Showing the profile list full name
544 - $item: ProfileListItem widget
546 StartProfileListItemLocation: Showing the profile list location
547 - $item: ProfileListItem widget
549 EndProfileListItemLocation: Showing the profile list location
550 - $item: ProfileListItem widget
552 StartProfileListItemHomepage: Showing the profile list homepage
553 - $item: ProfileListItem widget
555 EndProfileListItemHomepage: Showing the profile list homepage
556 - $item: ProfileListItem widget
558 StartProfileListItemBio: Showing the profile list bio
559 - $item: ProfileListItem widget
561 EndProfileListItemBio: Showing the profile list bio
562 - $item: ProfileListItem widget
564 StartProfileListItemActionElements: Showing the profile list actions (prepend a button here, or replace all buttons)
565 - $item: ProfileListItem widget
567 EndProfileListItemActionElements: Showing profile list actions (append a button here)
568 - $item: ProfileListItem widget
570 StartUserXRDS: Start XRDS output (right after the opening XRDS tag)
571 - $action: the current action
572 - &$xrdsoutputter - XRDSOutputter object to write to
574 EndUserXRDS: End XRDS output (right before the closing XRDS tag)
575 - $action: the current action
576 - &$xrdsoutputter - XRDSOutputter object to write to
578 StartPublicXRDS: Start XRDS output (right after the opening XRDS tag)
579 - $action: the current action
580 - &$xrdsoutputter - XRDSOutputter object to write to
582 EndPublicXRDS: End XRDS output (right before the closing XRDS tag)
583 - $action: the current action
584 - &$xrdsoutputter - XRDSOutputter object to write to
586 StartCheckPassword: Check a username/password
587 - $nickname: The nickname to check
588 - $password: The password to check
589 - &$authenticatedUser: set to User object if credentials match a user.
591 EndCheckPassword: After checking a username/password pair
592 - $nickname: The nickname that was checked
593 - $password: The password that was checked
594 - $authenticatedUser: User object if credentials match a user, else null.
596 StartChangePassword: Before changing a password
598 - $oldpassword: the user's old password
599 - $newpassword: the desired new password
601 EndChangePassword: After changing a password
604 StartHashPassword: Generate a hashed version of the password (like a salted crypt)
605 - &$hashed: Hashed version of the password, later put in the database
606 - $password: The password that should be hashed
607 - $profile: Profile that this password and hash belongs to. Can be null.
609 StartSetUser: Before setting the currently logged in user
612 EndSetUser: After setting the currently logged in user
615 StartSetApiUser: Before setting the current API user
618 EndSetApiUser: After setting the current API user
621 StartHasRole: Before determing if the a profile has a given role
622 - $profile: profile in question
623 - $name: name of the role in question
624 - &$has_role: does this profile have the named role?
626 EndHasRole: Before determing if the a profile has a given role
627 - $profile: profile in question
628 - $name: name of the role in question
629 - $has_role: does this profile have the named role?
631 UserDeleteRelated: Specify additional tables to delete entries from when deleting users
633 - &$related: array of DB_DataObject class names to delete entries on matching user_id.
635 GetUrlShorteners: Specify URL shorteners that are available for use
636 - &$shorteners: append your shortener to this array like so: $shorteners[shortenerName]=array('display'=>display, 'freeService'=>boolean)
638 StartShortenUrl: About to shorten a URL
639 - $url: url to be shortened
640 - $shortenerName: name of the requested shortener
641 - &$shortenedUrl: short version of the url
643 EndShortenUrl: After a URL has been shortened
644 - $url: url to be shortened
645 - $shortenerName: name of the requested shortener
646 - $shortenedUrl: short version of the url
648 StartCssLinkElement: Before a <link rel="stylesheet"..> element is written
654 EndCssLinkElement: After a <link rel="stylesheet"..> element is written
660 StartStyleElement: Before a <style...> element is written
666 EndStyleElement: After a <style...> element is written
672 StartScriptElement: Before a <script...> element is written
677 EndScriptElement: After a <script...> element is written
682 StartInlineScriptElement: Before a <script...> element is written
687 EndInlineScriptElement: After a <script...> element is written
692 StartLog: Before writing to the logs
697 EndLog: After writing to the logs
702 StartBlockProfile: when we're about to block
703 - $user: the person doing the block
704 - $profile: the person getting blocked, can be remote
706 EndBlockProfile: when a block has succeeded
707 - $user: the person doing the block
708 - $profile: the person blocked, can be remote
710 StartUnblockProfile: when we're about to unblock
711 - $user: the person doing the unblock
712 - $profile: the person getting unblocked, can be remote
714 EndUnblockProfile: when an unblock has succeeded
715 - $user: the person doing the unblock
716 - $profile: the person unblocked, can be remote
718 StartSubscribe: when a subscription is starting
719 - $profile: Profile that is subscribing
720 - $other: Profile that is being subscribed to
722 EndSubscribe: when a subscription is finished
723 - $profile: Profile that is subscribing
724 - $other: Profile that is being subscribed to
726 StartUnsubscribe: when an unsubscribe is starting
727 - $profile: Profile that is unsubscribing
728 - $other: Profile that is being unsubscribed from
730 EndUnsubscribe: when an unsubscribe is done
731 - $profile: Profile that is unsubscribing
732 - $other: Profile that is being unsubscribed from
734 StartJoinGroup: when a user is joining a group
735 - $group: the group being joined
736 - $profile: the local or remote user joining
738 EndJoinGroup: when a user finishes joining a group
739 - $group: the group being joined
740 - $profile: the local or remote user joining
742 StartLeaveGroup: when a user is leaving a group
743 - $group: the group being left
744 - $profile: the local or remote user leaving
746 EndLeaveGroup: when a user has left a group
747 - $group: the group being left
748 - $profile: the local or remote user leaving
750 StartShowContentLicense: Showing the default license for content
751 - $action: the current action
753 EndShowContentLicense: Showing the default license for content
754 - $action: the current action
756 GetImTransports: Get IM transports that are available
757 - &$transports: append your transport to this array like so: $transports[transportName]=array('display'=>display)
759 NormalizeImScreenname: Normalize an IM screenname
760 - $transport: transport the screenname is on
761 - &$screenname: screenname to be normalized
763 ValidateImScreenname: Validate an IM screenname
764 - $transport: transport the screenname is on
765 - $screenname: screenname to be validated
766 - $valid: is the screenname valid?
768 SendImConfirmationCode: Send a confirmation code to confirm a user owns an IM screenname
769 - $transport: transport the screenname exists on
770 - $screenname: screenname being confirmed
771 - $code: confirmation code for confirmation URL
772 - $user: user requesting the confirmation
774 StartUserRegister: When a new user is being registered
775 - $profile: Profile object with new profile data (no ID yet)
777 EndUserRegister: When a new user has been registered
778 - $profile: Profile object with new profile data
780 StartRobotsTxt: Before outputting the robots.txt page
781 - &$action: RobotstxtAction being shown
783 EndRobotsTxt: After the default robots.txt page (good place for customization)
784 - &$action: RobotstxtAction being shown
786 StartGetProfileUri: When determining the canonical URI for a given profile
787 - $profile: the current profile
790 EndGetProfileUri: After determining the canonical URI for a given profile
791 - $profile: the current profile
794 StartGetProfileAcctUri: Get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
795 - $profile: Profile of user we want to get acct: URI for
796 - &$acct: string with the resulting acct: uri
798 EndGetProfileAcctUri: Last attempts to get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
799 - $profile: Profile of user we want to get acct: URI for
800 - &$acct: string with the resulting acct: uri
802 StartFavorNotice: Saving a notice as a favorite
803 - $profile: profile of the person faving (can be remote!)
804 - $notice: notice being faved
805 - &$fave: Favor object; null to start off with, but feel free to override.
807 EndFavorNotice: After saving a notice as a favorite
808 - $profile: profile of the person faving (can be remote!)
809 - $notice: notice being faved
811 StartDisfavorNotice: Saving a notice as a favorite
812 - $profile: profile of the person faving (can be remote!)
813 - $notice: notice being faved
814 - &$result: result of the disfavoring (if you override)
816 EndDisfavorNotice: After saving a notice as a favorite
817 - $profile: profile of the person faving (can be remote!)
818 - $notice: notice being faved
820 StartFavorNoticeForm: starting the data in the form for favoring a notice
821 - $FavorForm: the favor form being shown
822 - $notice: notice being favored
824 EndFavorNoticeForm: Ending the data in the form for favoring a notice
825 - $FavorForm: the favor form being shown
826 - $notice: notice being favored
828 StartDisFavorNoticeForm: starting the data in the form for disfavoring a notice
829 - $DisfavorForm: the disfavor form being shown
830 - $notice: notice being difavored
832 EndDisFavorNoticeForm: Ending the data in the form for disfavoring a notice
833 - $DisfavorForm: the disfavor form being shown
834 - $notice: notice being disfavored
836 StartFindMentions: start finding mentions in a block of text
837 - $sender: sender profile
838 - $text: plain text version of the notice
839 - &$mentions: mentions found so far. Array of arrays; each array
840 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
841 'title' (title of the link), 'position' (position of the text to
842 replace), 'text' (text to replace)
844 EndFindMentions: end finding mentions in a block of text
845 - $sender: sender profile
846 - $text: plain text version of the notice
847 - &$mentions: mentions found so far. Array of arrays; each array
848 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
849 'title' (title of the link), 'position' (position of the text to
850 replace), 'text' (text to replace)
852 StartShowSubscriptionsContent: before showing the subscriptions content
853 - $action: the current action
855 EndShowSubscriptionsContent: after showing the subscriptions content
856 - $action: the current action
858 StartShowUserGroupsContent: before showing the user groups content
859 - $action: the current action
861 EndShowUserGroupsContent: after showing the user groups content
862 - $action: the current action
864 StartShowAllContent: before showing the all (you and friends) content
865 - $action: the current action
867 EndShowAllContent: after showing the all (you and friends) content
868 - $action: the current action
870 StartShowSubscriptionsMiniList: at the start of subscriptions mini list
871 - $action: the current action
873 EndShowSubscriptionsMiniList: at the end of subscriptions mini list
874 - $action: the current action
876 StartShowGroupsMiniList: at the start of groups mini list
877 - $action: the current action
879 EndShowGroupsMiniList: at the end of groups mini list
880 - $action: the current action
882 StartDeleteUserForm: starting the data in the form for deleting a user
883 - $action: action being shown
884 - $user: user being deleted
886 EndDeleteUserForm: Ending the data in the form for deleting a user
887 - $action: action being shown
888 - $user: user being deleted
890 StartDeleteUser: handling the post for deleting a user
891 - $action: action being shown
892 - $user: user being deleted
894 EndDeleteUser: handling the post for deleting a user
895 - $action: action being shown
896 - $user: user being deleted
898 StartNoticeAsActivity: before converting a notice to an activity
899 - $notice: notice being converted
900 - &$activity: initially empty activity
902 EndNoticeAsActivity: after converting a notice to an activity (good time to customize!)
903 - $notice: notice being converted
904 - &$activity: activity, now more-or-less full
906 StartNoticeSaveWeb: before saving a notice through the Web interface
907 - $action: action being executed (instance of NewNoticeAction)
908 - &$authorId: integer ID of the author
909 - &$text: text of the notice
910 - &$options: additional options (location, replies, etc.)
912 EndNoticeSaveWeb: after saving a notice through the Web interface
913 - $action: action being executed (instance of NewNoticeAction)
914 - $notice: notice that was saved
916 StartRssEntryArray: at the start of copying a notice to an array
917 - $notice: the notice being copied
918 - &$entry: the entry (empty at beginning)
920 EndRssEntryArray: at the end of copying a notice to an array
921 - $notice: the notice being copied
922 - &$entry: the entry, with all the fields filled up
924 NoticeDeleteRelated: at the beginning of deleting related fields to a notice
925 - $notice: notice being deleted
927 StartShowHeadTitle: when beginning to show the <title> element
928 - $action: action being shown
930 EndShowHeadTitle: when done showing the <title>
931 - $action: action being shown
933 StartShowPageTitle: when beginning to show the page title <h1>
934 - $action: action being shown
936 EndShowPageTitle: when done showing the page title <h1>
937 - $action: action being shown
939 StartDeleteOwnNotice: when a user starts to delete their own notice
940 - $user: the user doing the delete
941 - $notice: the notice being deleted
943 EndDeleteOwnNotice: when a user has deleted their own notice
944 - $user: the user doing the delete
945 - $notice: the notice being deleted
947 StartShowFeedLinkList: before showing the feed list in the sidebar
948 - $action: action being executed
949 - $feeds: list of feeds to show
951 EndShowFeedLinkList: after showing the feed list in the sidebar
952 - $action: action being executed
953 - $feeds: list of feeds shown
955 StartShowFeedLink: before showing an individual feed item
956 - $action: action being executed
957 - $feed: feed to show
959 EndShowFeedLink: after showing an individual feed
960 - $action: action being executed
961 - $feed: feed to show
963 StartShowNoticeForm: before showing the notice form (before <form>)
964 - $action: action being executed
966 EndShowNoticeForm: after showing the notice form (after <form>)
967 - $action: action being executed
969 StartGrantRole: when a role is being assigned
970 - $profile: profile that will have the role
971 - $role: string name of the role
973 EndGrantRole: when a role has been successfully assigned
974 - $profile: profile that will have the role
975 - $role: string name of the role
977 StartRevokeRole: when a role is being revoked
978 - $profile: profile that will lose the role
979 - $role: string name of the role
981 EndRevokeRole: when a role has been revoked
982 - $profile: profile that lost the role
983 - $role: string name of the role
985 StartAtomPubNewActivity: When a new activity comes in through Atom Pub API
986 - &$activity: received activity
987 - $user: user publishing the entry
988 - &$notice: notice created; initially null, can be set
990 EndAtomPubNewActivity: When a new activity comes in through Atom Pub API
991 - $activity: received activity
992 - $user: user publishing the entry
993 - $notice: notice that was created
995 AdminPanelCheck: When checking whether the current user can access a given admin panel
996 - $name: Name of the admin panel
997 - &$isOK: Boolean whether the user is allowed to use the panel
999 StartAdminPanelNav: Before displaying the first item in the list of admin panels
1000 - $nav The AdminPanelNav widget
1002 EndAdminPanelNav: After displaying the last item in the list of admin panels
1003 - $nav The AdminPanelNav widget
1005 StartActivityObjectFromNotice: When converting a notice to an activity:object
1006 - $notice: The notice being converted
1007 - &$object: The resulting object. Fill this and return false to override defaults.
1009 EndActivityObjectFromNotice: After converting a notice to an activity:object
1010 - $notice: The notice being converted
1011 - &$object: The resulting object. Can be edited
1013 StartActivityObjectFromProfile: When converting a profile to an activity:object
1014 - $profile: The profile being converted
1015 - &$object: The (empty) object. Fill it up and return false to override defaults.
1017 EndActivityObjectFromProfile: After converting a profile to an activity:object
1018 - $profile: The profile being converted
1019 - &$object: The finished object. Can be tweaked
1021 StartActivityObjectFromGroup: When converting a group to an activity:object
1022 - $group: The group being converted
1023 - &$object: The (empty) object. Fill and return false to override.
1025 EndActivityObjectFromGroup: After converting a group to an activity:object
1026 - $group: The group being converted
1027 - &$object: The finished object. Tweak as needed.
1029 StartImportActivity: when we start to import an activity
1030 - $user: User to make the author import
1031 - $author: Author of the feed; good for comparisons
1032 - $activity: The current activity
1033 - $trusted: How "trusted" the process is
1034 - &$done: Return value; whether to continue
1036 EndImportActivity: when we finish importing an activity
1037 - $user: User to make the author import
1038 - $author: Author of the feed; good for comparisons
1039 - $activity: The current activity
1040 - $trusted: How "trusted" the process is
1042 StartProfileSettingsActions: when we're showing account-management action list
1043 - $action: Action being shown (use for output)
1045 EndProfileSettingsActions: when we're showing account-management action list
1046 - $action: Action being shown (use for output)
1048 StartOpenNoticeListItemElement: Before the opening <li> of a notice list element
1049 - $nli: The notice list item being shown
1051 EndOpenNoticeListItemElement: After the opening <li> of a notice list element
1052 - $nli: The notice list item being shown
1054 StartCloseNoticeListItemElement: Before the closing </li> of a notice list element
1055 - $nli: The notice list item being shown
1057 EndCloseNoticeListItemElement: After the closing </li> of a notice list element
1058 - $nli: The notice list item being shown
1060 StartGroupEditFormData: Beginning the group edit form entries
1061 - $form: The form widget being shown
1063 EndGroupEditFormData: Ending the group edit form entries
1064 - $form: The form widget being shown
1066 StartGroupSave: After initializing but before saving a group
1067 - &$group: group about to be saved
1069 EndGroupSave: After saving a group, aliases, and first member
1070 - $group: group that was saved
1072 StartInterpretCommand: Before running a command
1073 - $cmd: First word in the string, 'foo' in 'foo argument'
1074 - $arg: Argument, if any, like 'argument' in 'foo argument'
1075 - $user: User who issued the command
1076 - &$result: Resulting command; you can set this!
1078 EndInterpretCommand: Before running a command
1079 - $cmd: First word in the string, 'foo' in 'foo argument'
1080 - $arg: Argument, if any, like 'argument' in 'foo argument'
1081 - $user: User who issued the command
1082 - $result: Resulting command
1084 StartGroupActionsList: Start the list of actions on a group profile page (after <ul>, before first <li>)
1085 - $action: action being executed (for output and params)
1086 - $group: group for the page
1088 EndGroupActionsList: End the list of actions on a group profile page (before </ul>, after last </li>)
1089 - $action: action being executed (for output and params)
1090 - $group: group for the page
1092 StartGroupProfileElements: Start showing stuff about the group on its profile page
1093 - $action: action being executed (for output and params)
1094 - $group: group for the page
1096 EndGroupProfileElements: Start showing stuff about the group on its profile page
1097 - $action: action being executed (for output and params)
1098 - $group: group for the page
1100 StartShowProfileTagContent: When showing a people tag page
1101 - $action: action being executed (for output and params)
1103 EndShowProfileTagContent: After showing the contents of a people tag page
1104 - $action: action being executed (for output and params)
1106 StartShowTaggedProfilesMiniList: at the start of mini list of tagged profiles
1107 - $action: action being executed (for output and params)
1109 EndShowTaggedProfilesMiniList: at the end of mini list of tagged profiles
1110 - $action: action being executed (for output and params)
1112 StartShowProfileTagSubscribersMiniList: at the start of mini list of people tag subscribers
1113 - $action: action being executed (for output and params)
1115 EndShowProfileTagSubscribersMiniList: at the end of mini list of people tag subscribers
1116 - $action: action being executed (for output and params)
1118 StartTagProfileAction: When starting to show profile tagging page
1119 - $action: action being executed (for output and params)
1120 - $profile: profile being tagged
1122 EndTagProfileAction: After showing profile tagging page
1123 - $action: action being executed (for output and params)
1124 - $profile: profile being tagged
1126 StartProfileCompletionSearch: When starting a profile search for autocompletion
1127 - $action: action being executed (for output and params)
1128 - &$profile: result Profile objects
1129 - $search_engine: the search engine
1131 EndProfileCompletionSearch: After search results for profile autocompletion have been found
1132 - $action: profilec completion action
1133 - &$profile: current result Profile objects
1134 - $search_engine: The search engine object
1136 StartShowTagProfileForm: When showing people tagging form
1137 - $action: action being executed (for output and params)
1138 - $profile: profile being tagged
1140 EndShowTagProfileForm: After showing people tagging form
1141 - $action: action being executed (for output and params)
1142 - $profile: profile being tagged
1144 StartSavePeopletags: When starting to save people tags
1145 - $action: action being executed (for output and params)
1146 - $tagstring: string input, a list of tags
1148 EndSavePeopletags: After saving people tags
1149 - $action: action being executed (for output and params)
1150 - $tagstring: string input, a list of tags
1152 StartProfiletagGetUri: when generating the Uri for a people tag
1153 - $profile_list: the people tag, a Profile_list object
1156 EndProfiletagGetUri: after generating the uri for a people tag
1157 - $profile_list: the people tag, a Profile_list object
1160 StartUserPeopletagHomeUrl: when generating the homepage url for a people tag
1161 - $profile_list: the people tag, a Profile_list object
1164 EndUserPeopletagHomeUrl: after generating the homepage url for a people tag
1165 - $profile_list: the people tag, a Profile_list object
1168 StartProfiletagPermalink: when generating the permalink url for a people tag
1169 - $profile_list: the people tag, a Profile_list object
1172 EndProfiletagPermalink: after generating the permalink url for a people tag
1173 - $profile_list: the people tag, a Profile_list object
1176 StartTagProfile: when tagging a profile
1177 - $tagger: profile tagging
1178 - $tagged: profile being tagged
1181 EndTagProfile: after tagging a profile
1182 - $newtag: the newly created Profile_tag object
1184 StartUntagProfile: when deleting a people tag
1185 - $ptag: the Profile_tag object being deleted
1187 EndUntagProfile: after deleting a people tag
1188 - $orig: a copy of the deleted Profile_tag object
1190 StartSubscribePeopletag: when subscribing to a people tag
1191 - $peopletag: Profile_list object being subscribed to
1192 - $profile: subscriber's profile
1194 EndSubscribePeopletag: after subscribing to a people tag
1195 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1196 - $profile: subscriber's profile
1198 StartUnsubscribePeopletag: when unsubscribing to a people tag
1199 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1200 - $profile: subscriber's profile
1202 EndUnsubscribePeopletag: after unsubscribing to a people tag
1203 - $peopletag: Profile_list object being subscribed to
1204 - $profile: subscriber's profile
1206 StartActivityObjectFromPeopletag: while starting to create an ActivityObject from a people tag
1207 - $profile_list: the people tag, a Profile_list object
1208 - &$object: activity object
1210 EndActivityObjectFromPeopletag: after making an ActivityObject from a people tag
1211 - $profile_list: the people tag, a Profile_list object
1212 - &$object: activity object
1214 StartPeopletagGroupNav: Showing the people tag nav menu
1215 - $menu: the menu widget; use $menu->action for output
1217 EndPeopletagGroupNav: after showing the people tag nav menu
1218 - $menu: the menu widget; use $menu->action for output
1220 StartShowPeopletagItem: when showing a people tag
1221 - $widget: PeopletagListItem widget
1223 EndShowPeopletagItem: after showing a people tag
1224 - $widget: PeopletagListItem widget
1226 StartSubscribePeopletagForm: when showing people tag subscription form
1227 - $action: action being executed (for output and params)
1228 - $peopletag: people tag being subscribed to
1230 EndSubscribePeopletagForm: after showing the people tag subscription form
1231 - $action: action being executed (for output and params)
1232 - $peopletag: people tag being subscribed to
1234 StartShowPeopletags: when showing a textual list of people tags
1235 - $widget: PeopletagsWidget; use $widget->out for output
1236 - $tagger: profile of the tagger
1237 - $tagged: profile tagged
1239 EndShowPeopletags: after showing a textual list of people tags
1240 - $widget: PeopletagsWidget; use $widget->out for output
1241 - $tagger: profile of the tagger
1242 - $tagged: profile tagged
1244 StartProfileListItemTags: when showing people tags in a profile list item widget
1245 - $widget: ProfileListItem widget
1247 EndProfileListItemTags: after showing people tags in a profile list item widget
1248 - $widget: ProfileListItem widget
1250 StartActivityObjectOutputAtom: Called at start of Atom XML output generation for ActivityObject chunks, just inside the <activity:object>. Cancel the event to take over its output completely (you're responsible for calling the matching End event if so)
1251 - $obj: ActivityObject
1252 - $out: XMLOutputter to append custom output
1254 EndActivityObjectOutputAtom: Called at end of Atom XML output generation for ActivityObject chunks, just inside the </activity:object>
1255 - $obj: ActivityObject
1256 - $out: XMLOutputter to append custom output
1258 StartActivityObjectOutputJson: Called at start of JSON output generation for ActivityObject chunks: the array has not yet been filled out. Cancel the event to take over its output completely (you're responsible for calling the matching End event if so)
1259 - $obj ActivityObject
1260 - &$out: array to be serialized; you're free to modify it
1262 EndActivityObjectOutputJson: Called at end of JSON output generation for ActivityObject chunks: the array has not yet been filled out.
1263 - $obj ActivityObject
1264 - &$out: array to be serialized; you're free to modify it
1266 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.
1268 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1270 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.
1272 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1274 StartDefaultLocalNav: When showing the default local nav
1276 - $user: current user
1278 EndDefaultLocalNav: When showing the default local nav
1280 - $user: current user
1282 StartShowAccountProfileBlock: When showing the profile block for an account
1283 - $out: XMLOutputter to append custom output
1284 - $profile: the profile being shown
1286 EndShowAccountProfileBlock: After showing the profile block for an account
1287 - $out: XMLOutputter to append custom output
1288 - $profile: the profile being shown
1290 StartShowGroupProfileBlock: When showing the profile block for a group
1291 - $out: XMLOutputter to append custom output
1292 - $profile: the profile being shown
1294 EndShowGroupProfileBlock: After showing the profile block for a group
1295 - $out: XMLOutputter to append custom output
1296 - $group: the group being shown
1298 StartShowThreadedNoticeTail: when showing the replies etc. to a notice
1299 - $nli: parent noticelistitem
1300 - $notice: parent notice
1301 - &$children: list of children
1303 EndShowThreadedNoticeTail: when showing the replies etc. to a notice
1304 - $nli: parent noticelistitem
1305 - $notice: parent notice
1306 - $children: list of children
1308 StartShowThreadedNoticeSub: when showing a reply to a notice
1309 - $nli: parent noticelistitem
1310 - $parent: parent notice
1311 - $child: child notice
1313 EndShowThreadedNoticeSub: when showing a reply to a notice
1314 - $nli: parent noticelistitem
1315 - $parent: parent notice
1316 - $child: child notice
1318 StartAddEmailAddress: when adding an email address through the Web UI
1319 - $user: user getting the new address
1320 - $email: email being added
1322 EndAddEmailAddress: done adding an email address through the Web UI
1323 - $user: user getting the new address
1324 - $email: email being added
1326 StartValidateEmailInvite: when validating an email address for invitations
1327 - $user: user doing the invite
1328 - $email: email address
1329 - &$valid: flag for if it's valid; can be modified
1331 EndValidateEmailInvite: after validating an email address for invitations
1332 - $user: user doing the invite
1333 - $email: email address
1334 - &$valid: flag for if it's valid; can be modified
1336 StartLocalURL: before resolving a local url for an action
1337 - &$action: action to find a path for
1338 - &$paramsi: parameters to pass to the action
1339 - &$fragment: any url fragement
1340 - &$addSession: whether to add session variable
1341 - &$url: resulting URL to local resource
1343 EndLocalURL: before resolving a local url for an action
1344 - &$action: action to find a path for
1345 - &$paramsi: parameters to pass to the action
1346 - &$fragment: any url fragement
1347 - &$addSession: whether to add session variable
1348 - &$url: resulting URL to local resource
1350 StartProfileGetAvatar: When getting an avatar for a profile
1352 - $size: size of the avatar
1355 EndProfileGetAvatar: After getting an avatar for a profile
1357 - $size: size of the avatar
1360 StartRegisterSuccess: Before showing the registration success message
1361 - $action: the registration action
1363 StartRegisterSuccess: After showing the registration success message
1364 - $action: the registration action
1366 StartDocFileForTitle: Before searching for a doc or mail template
1367 - $title: Title we're looking for
1368 - &$paths: Paths we're searching
1369 - &$filename: Filename so far (set this if you want)
1371 EndDocFileForTitle: After searching for a doc or mail template
1372 - $title: Title we looked for
1373 - $paths: Paths we searched
1374 - &$filename: Filename so far (set this if you want)
1376 StartReadWriteTables: when noting which tables must be read-write, even on read-only actions
1377 - &$tables: list of table names
1378 - &$rwdb: read-write database URI
1380 EndReadWriteTables: after noting which tables must be read-write, even on read-only actions
1381 - $tables: list of table names
1382 - $rwdb: read-write database URI
1384 StartShowInviteForm: Right before displaying the invitations form
1385 - $action: invitation action
1387 EndShowInviteForm: After displaying the invitations form
1388 - $action: invitation action
1390 StartSendInvitations: Right before sending invitations
1391 - $action: invitation action
1393 EndSendInvitations: Right after sending invitations
1394 - $action: invitation action
1396 StartShowInvitationSuccess: Right before showing invitations success msg
1397 - $action: invitation action
1399 EndShowInvitationSuccess: After showing invitations success msg
1400 - $action: invitation action
1402 StartUpgrade: when starting a site upgrade
1404 EndUpgrade: when ending a site upgrade; good place to do your own upgrades
1406 HaveIMPlugin: is there an IM plugin loaded?
1407 - &$haveIMPlugin: set me to true if you're loaded!
1409 StartShowNoticeOptionItems: Before showing first controls in a notice list item; inside the div
1410 - $nli: NoticeListItem being shown
1412 EndShowNoticeOptionItems: After showing last controls in a notice list item; inside the div
1413 - $nli: NoticeListItem being shown
1415 StartNoticeInScope: Before checking if a notice should be visible to a user
1416 - $notice: The notice to check
1417 - $profile: The profile to check for scope
1418 - &$bResult: The boolean result; fill this in if you want to skip
1420 EndNoticeInScope: After checking if a notice should be visible to a user
1421 - $notice: The notice to check
1422 - $profile: The profile to check for scope
1423 - &$bResult: The boolean result; overwrite this if you so desire
1425 StartNoticeListPrefill: Before pre-filling a list of notices with extra data
1426 - &$notices: Notices to be pre-filled
1427 - $avatarSize: The avatar size for the list
1429 EndNoticeListPrefill: After pre-filling a list of notices with extra data
1430 - &$notices: Notices that were pre-filled
1431 - &$profiles: Profiles that were pre-filled
1432 - $avatarSize: The avatar size for the list
1434 OtherAccountProfiles: Hook to add account profiles to a user account profile block
1435 - $profile: the Profile being shown
1436 - &$others: Modifiable array of profile info arrays. Each one has the following fields:
1437 href: link to the profile
1438 text: text for the profile
1439 image: mini image for the profile