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 StartShowLaconicaScripts: backwards compatibility; deprecated
55 - $action: the current action
57 EndShowLaconicaScripts: backwards compatibility; deprecated
58 - $action: the current action
60 StartShowSections: Start the list of sections in the sidebar
61 - $action: the current action
63 EndShowSections: End the list of sections in the sidebar
64 - $action: the current action
66 StartShowHeader: Showing before the header container
67 - $action: the current action
69 EndShowHeader: Showing after the header container
70 - $action: the current action
72 StartShowFooter: Showing before the footer container
73 - $action: the current action
75 EndShowFooter: Showing after the footer container
76 - $action: the current action
78 StartShowContentBlock: Showing before the content container
79 - $action: the current action
81 EndShowContentBlock: Showing after the content container
82 - $action: the current action
84 StartShowAside: Showing before the Aside container
85 - $action: the current action
87 EndShowAside: Showing after the Aside container
88 - $action: the current action
90 StartShowNoticeFormData: Showing before the notice form data
91 - $action: the current action
93 EndShowNoticeFormData: Showing after the notice form data
94 - $action: the current action
96 StartNoticeSave: before inserting a notice (good place for content filters)
97 - $notice: notice being saved (no ID or URI)
99 EndNoticeSave: after inserting a notice and related code
100 - $notice: notice that was saved (with ID and URI)
102 StartShowLocalNavBlock: Showing the local nav menu
103 - $action: the current action
105 EndShowLocalNavBlock: At the end of the local nav menu
106 - $action: the current action
108 StartShowHTML: Chance to set document headers (e.g., content type, charset, language), DOCTYPE and html element properties
109 - $action: the current action
111 EndShowHTML: Showing after the html element
112 - $action: the current action
114 StartPublicGroupNav: Showing the public group nav menu
115 - $menu: the menu widget; use $menu->action for output
117 EndPublicGroupNav: At the end of the public group nav menu
118 - $menu: the menu widget; use $menu->action for output
120 StartSubGroupNav: Showing the subscriptions group nav menu
121 - $menu: the menu widget; use $menu->action for output
123 EndSubGroupNav: At the end of the subscriptions group nav menu
124 - $menu: the menu widget; use $menu->action for output
126 StartInitializeRouter: Before the router instance has been initialized; good place to add routes
127 - $m: the Net_URL_Mapper that has just been set up
129 RouterInitialized: After the router instance has been initialized
130 - $m: the Net_URL_Mapper that has just been set up
132 StartLogout: Before logging out
133 - $action: the logout action
135 EndLogout: After logging out
136 - $action: the logout action
138 ArgsInitialize: After the argument array has been initialized
139 - $args: associative array of arguments, can be modified
141 StartAddressData: Allows the site owner to provide additional information about themselves for contact (e.g., tagline, email, location)
142 - $action: the current action
144 EndAddressData: At the end of <address>
145 - $action: the current action
147 StartShowSiteNotice: Before showing site notice
148 - $action: the current action
150 EndShowSiteNotice: After showing site notice
151 - $action: the current action
153 StartLoginGroupNav: Before showing the login and register navigation menu
154 - $action: the current action
156 EndLoginGroupNav: After showing the login and register navigation menu
157 - $action: the current action
159 StartAccountSettingsNav: Before showing the account settings menu
160 - $action: the current action
162 EndAccountSettingsNav: After showing the account settings menu
163 - $action: the current action
165 StartAccountSettingsProfileMenuItem: Before showing the Profile menu item
166 - $widget: AccountSettingsNav instance being shown
168 EndAccountSettingsProfileMenuItem: After showing the Profile menu item
169 - $widget: AccountSettingsNav instance being shown
171 StartAccountSettingsAvatarMenuItem: Before showing the Avatar menu item
172 - $widget: AccountSettingsNav instance being shown
174 EndAccountSettingsAvatarMenuItem: After showing the Avatar menu item
175 - $widget: AccountSettingsNav instance being shown
177 StartAccountSettingsPasswordMenuItem: Before showing the Password menu item
178 - $widget: AccountSettingsNav instance being shown
180 EndAccountSettingsPasswordMenuItem: After showing the Password menu item
181 - $widget: AccountSettingsNav instance being shown
183 StartAccountSettingsEmailMenuItem: Before showing the Email menu item
184 - $widget: AccountSettingsNav instance being shown
186 EndAccountSettingsEmailMenuItem: After showing the Email menu item
187 - $widget: AccountSettingsNav instance being shown
189 StartAccountSettingsDesignMenuItem: Before showing the Design menu item
190 - $widget: AccountSettingsNav instance being shown
192 EndAccountSettingsDesignMenuItem: After showing the Design menu item
193 - $widget: AccountSettingsNav instance being shown
195 StartAccountSettingsOtherMenuItem: Before showing the Other menu item
196 - $widget: AccountSettingsNav instance being shown
198 EndAccountSettingsOtherMenuItem: After showing the Other menu item
199 - $widget: AccountSettingsNav instance being shown
201 Autoload: When trying to autoload a class
202 - $cls: the class being sought. A plugin might require_once the file for the class.
204 SensitiveAction: determines if an action is 'sensitive' and should use SSL
205 - $action: name of the action, like 'login'
206 - $sensitive: flag for whether this is a sensitive action
208 LoginAction: determines if an action is a 'login' action (OK for public view in private mode)
209 - $action: name of the action, like 'register'
210 - $login: flag for whether this is a login action
212 StartShowHead: called before showing the <head> element and children
213 - $action: action object being show
215 EndShowHead: called after showing the <head> element (and </head>)
216 - $action: action object being shown
218 StartShowBody: called before showing the <body> element and children
219 - $action: action object being shown
221 EndShowBody: called after showing the <body> element (and </body>)
222 - $action: action object being shown
224 StartPersonalGroupNav: beginning of personal group nav menu
225 - $action: action object being shown
227 EndPersonalGroupNav: end of personal group nav menu (good place to add a menu item)
228 - $action: action object being shown
230 StartGroupGroupNav: Showing the group nav menu
231 - $action: the current action
233 EndGroupGroupNav: At the end of the group nav menu
234 - $action: the current action
236 StartEndHTML: just before the </html> tag
237 - $action: action object being shown
239 EndEndHTML: just after the </html> tag
240 - $action: action object being shown
242 StartShowDesign: just before showing a site, user, or group design
243 - $action: action object being shown
245 EndShowDesign: just after showing a site, user, or group design
246 - $action: action object being shown
248 StartShowExportData: just before showing the <div> with export data (feeds)
249 - $action: action object being shown
251 EndShowExportData: just after showing the <div> with export data (feeds)
252 - $action: action object being shown
254 StartShowNoticeItem: just before showing the notice item
255 - $item: The NoticeListItem object being shown
257 EndShowNoticeItem: just after showing the notice item
258 - $item: the NoticeListItem object being shown
260 StartShowNoticeInfo: just before showing notice info
261 - $item: The NoticeListItem object being shown
263 EndShowNoticeInfo: just after showing notice info
264 - $item: The NoticeListItem object being shown
266 StartShowNoticeOptions: just before showing notice options like fave, repeat, etc.
267 - $item: the NoticeListItem object being shown
269 EndShowNoticeOptions: just after showing notice options like fave, repeat, etc.
270 - $item: the NoticeListItem object being shown
272 StartShowFaveForm: just before showing the fave form
273 - $item: the NoticeListItem object being shown
275 EndShowFaveForm: just after showing the fave form
276 - $item: the NoticeListItem object being shown
278 StartShowPageNotice: just before showing the page notice (instructions or error)
279 - $action: action object being shown
281 EndShowPageNotice: just after showing the page notice (instructions or error)
282 - $action: action object being shown
284 StartShowPageTitle: just before showing the main h1 title of a page (only for registration)
285 - $action: action object being shown
287 StartProfileFormData: just before showing text entry fields on profile settings page
288 - $action: action object being shown
290 EndProfileFormData: just after showing text entry fields on profile settings page
291 - $action: action object being shown
293 StartProfileSaveForm: before starting to save a profile settings form
294 - $action: action object being shown
296 EndProfileSaveForm: after saving a profile settings form (after commit, no profile or user object!)
297 - $action: action object being shown
299 StartEmailFormData: just before showing text entry fields on email settings page
300 - $action: action object being shown
302 EndEmailFormData: just after showing text entry fields on email settings page
303 - $action: action object being shown
305 StartEmailSaveForm: before starting to save a email settings form
306 - $action: action object being shown
307 - &$user: user being saved
309 EndEmailSaveForm: after saving a email settings form (after commit)
310 - $action: action object being shown
311 - &$user: user being saved
313 StartRegistrationFormData: just before showing text entry fields on registration page
314 - $action: action object being shown
316 EndRegistrationFormData: just after showing text entry fields on registration page
317 - $action: action object being shown
319 StartRegistrationTry: before validating and saving a new user
320 - $action: action object being shown
322 EndRegistrationTry: after saving a new user (note: no profile or user object!)
323 - $action: action object being shown
325 StartAvatarFormData: before displaying avatar form
326 - $action: action object being shown
328 EndAvatarFormData: after displaying avatar form
329 - $action: action object being shown
331 StartAvatarSaveForm: before saving the avatar
332 - $action: action object being shown
334 EndAvatarSaveForm: after saving the avatar
335 - $action: action object being shown
337 StartNewQueueManager: before trying to start a new queue manager; good for plugins implementing new queue manager classes
338 - $qm: empty queue manager to set
340 RedirectToLogin: event when we force a redirect to login (like when going to a settings page on a remembered login)
341 - $action: action object being shown
342 - $user: current user
344 StartLoadDoc: before loading a help doc (hook this to show your own documentation)
345 - $title: title of the document
346 - $output: HTML output to show
348 EndLoadDoc: after loading a help doc (hook this to modify other documentation)
349 - $title: title of the document
350 - $output: HTML output to show
352 StartApiRss: after the rss <channel> element is started
353 - $action: action object being shown
355 StartApiAtom: after the <feed> element is started
356 - $action: action object being shown
358 StartEnqueueNotice: about to add a notice to the queues (good place to add a new transport)
359 - $notice: the notice being added
360 - &$transports: modifiable list of transports (as strings) to queue for
362 EndEnqueueNotice: after adding a notice to the queues
363 - $notice: the notice being added
364 - $transports: modifiable list of transports to use
366 UnqueueHandleNotice: Handle a notice when no queue manager is available
367 - $notice: the notice to handle
368 - $queue: the "queue" that is being executed
370 GetValidDaemons: Just before determining which daemons to run
371 - &$daemons: modifiable list of daemon scripts to run, filenames relative to scripts/
373 HandleQueuedNotice: Handle a queued notice at queue time (or immediately if no queue)
374 - &$notice: notice to handle
376 StartHtmlElement: Reight before outputting the HTML element - allows plugins to add namespaces
377 - $action: the current action
378 - &$attrs: attributes for the HTML element
380 EndHtmlElement: Right after outputting the HTML element
381 - $action: the current action
382 - &$attrs: attributes for the HTML element
384 StartShowHeadElements: Right after the <head> tag
385 - $action: the current action
387 EndShowHeadElements: Right before the </head> tag; put <script>s here if you need them in <head>
388 - $action: the current action
390 CheckSchema: chance to check the schema
392 StartProfileRemoteSubscribe: Before showing the link to remote subscription
393 - $userprofile: UserProfile widget
394 - &$profile: the profile being shown
396 EndProfileRemoteSubscribe: After showing the link to remote subscription
397 - $userprofile: UserProfile widget
398 - &$profile: the profile being shown
400 StartGroupSubscribe: Before showing the link to remote subscription
401 - $action: the current action
402 - $group: the group being shown
404 EndGroupSubscribe: After showing the link to remote subscription
405 - $action: the current action
406 - $group: the group being shown
408 StartProfilePageProfileSection: Starting to show the section of the
409 profile page with the actual profile data;
410 hook to prevent showing the profile (e.g.)
411 - $userprofile: UserProfile widget
412 - &$profile: the profile being shown
414 StartProfilePageProfileElements: inside the section, before the first
415 element; prepend elements here
416 - $userprofile: UserProfile widget
417 - &$profile: the profile being shown
419 EndProfilePageProfileElements: inside the section, after the last element;
421 - $userprofile: UserProfile widget
422 - &$profile: the profile being shown
424 EndProfilePageProfileSection: After showing the section of the profile
425 page with the profile elements
426 - $userprofile: UserProfile widget
427 - &$profile: the profile being shown
429 StartProfilePageActionsSection: Starting to show the section of the
430 profile page with action links; hook
431 to hide them (for example)
432 - $userprofile: UserProfile widget
433 - &$profile: the profile being shown
435 StartProfilePageActionsElements: inside the list, before the first
436 element; prepend elements here
437 - $userprofile: UserProfile widget
438 - &$profile: the profile being shown
440 EndProfilePageActionsElements: inside the list, after the last element;
442 - $userprofile: UserProfile widget
443 - &$profile: the profile being shown
445 EndProfilePageActionsSection: After showing the section of the profile
446 page with the entity actions
447 - $userprofile: UserProfile widget
448 - &$profile: the profile being shown
450 StartProfilePageAvatar: before showing the avatar on the profile page
451 - $userprofile: UserProfile widget
452 - &$profile: the profile being shown
454 EndProfilePageAvatar: after showing the avatar on the profile page
455 - $userprofile: UserProfile widget
456 - &$profile: the profile being shown
458 StartProfilePageNickname: before showing the nickname on the profile page
459 - $userprofile: UserProfile widget
460 - &$profile: the profile being shown
462 EndProfilePageNickname: after showing the nickname on the profile page
463 - $userprofile: UserProfile widget
464 - &$profile: the profile being shown
466 StartProfilePageFullName: before showing the fullname on the profile page
467 - $userprofile: UserProfile widget
468 - &$profile: the profile being shown
470 EndProfilePageFullName: after showing the fullname on the profile page
471 - $userprofile: UserProfile widget
472 - &$profile: the profile being shown
474 StartProfilePageLocation: before showing the location on the profile page
475 - $userprofile: UserProfile widget
476 - &$profile: the profile being shown
478 EndProfilePageLocation: after showing the location on the profile page
479 - $userprofile: UserProfile widget
480 - &$profile: the profile being shown
482 StartProfilePageHomepage: before showing the homepage link on the profile page
483 - $userprofile: UserProfile widget
484 - &$profile: the profile being shown
486 EndProfilePageHomepage: after showing the homepage on the profile page
487 - $userprofile: UserProfile widget
488 - &$profile: the profile being shown
490 StartProfilePageBio: before showing the bio on the profile page
491 - $userprofile: UserProfile widget
492 - &$profile: the profile being shown
494 EndProfilePageBio: after showing the bio on the profile page
495 - $userprofile: UserProfile widget
496 - &$profile: the profile being shown
498 StartProfilePageProfileTags: before showing the tags on the profile page
499 - $userprofile: UserProfile widget
500 - &$profile: the profile being shown
502 EndProfilePageProfileTags: after showing the tags on the profile page
503 - $userprofile: UserProfile widget
504 - &$profile: the profile being shown
506 StartProfileList: when starting a list of profiles (before <ul>)
507 - $profilelist: ProfileList widget, with $profile, $action, and $out
509 EndProfileList: when ending a list of profiles (after </ul>)
510 - $profilelist: ProfileList widget
512 StartProfileListItem: when starting to show a profile list item
513 - $item: ProfileListItem widget
515 EndProfileListItem: after showing a profile list item
516 - $item: ProfileListItem widget
518 StartProfileListItemProfile: the profile data part of the item
519 - $item: ProfileListItem widget
521 EndProfileListItemProfile: the profile data part of the item
522 - $item: ProfileListItem widget
524 StartProfileListItemActions: the actions (buttons) for an item
525 - $item: ProfileListItem widget
527 EndProfileListItemActions: the actions (buttons) for an item
528 - $item: ProfileListItem widget
530 StartProfileListItemProfileElements: inside the <div>
531 - $item: ProfileListItem widget
533 EndProfileListItemProfileElements: inside the <div>
534 - $item: ProfileListItem widget
536 StartProfileListItemAvatar: Showing a profile list avatar
537 - $item: ProfileListItem widget
539 EndProfileListItemAvatar: Showing a profile list avatar
540 - $item: ProfileListItem widget
542 StartProfileListItemFullName: Showing the profile list full name
543 - $item: ProfileListItem widget
545 EndProfileListItemFullName: Showing the profile list full name
546 - $item: ProfileListItem widget
548 StartProfileListItemLocation: Showing the profile list location
549 - $item: ProfileListItem widget
551 EndProfileListItemLocation: Showing the profile list location
552 - $item: ProfileListItem widget
554 StartProfileListItemHomepage: Showing the profile list homepage
555 - $item: ProfileListItem widget
557 EndProfileListItemHomepage: Showing the profile list homepage
558 - $item: ProfileListItem widget
560 StartProfileListItemBio: Showing the profile list bio
561 - $item: ProfileListItem widget
563 EndProfileListItemBio: Showing the profile list bio
564 - $item: ProfileListItem widget
566 StartProfileListItemActionElements: Showing the profile list actions (prepend a button here, or replace all buttons)
567 - $item: ProfileListItem widget
569 EndProfileListItemActionElements: Showing profile list actions (append a button here)
570 - $item: ProfileListItem widget
572 StartUserXRDS: Start XRDS output (right after the opening XRDS tag)
573 - $action: the current action
574 - &$xrdsoutputter - XRDSOutputter object to write to
576 EndUserXRDS: End XRDS output (right before the closing XRDS tag)
577 - $action: the current action
578 - &$xrdsoutputter - XRDSOutputter object to write to
580 StartPublicXRDS: Start XRDS output (right after the opening XRDS tag)
581 - $action: the current action
582 - &$xrdsoutputter - XRDSOutputter object to write to
584 EndPublicXRDS: End XRDS output (right before the closing XRDS tag)
585 - $action: the current action
586 - &$xrdsoutputter - XRDSOutputter object to write to
588 StartCheckPassword: Check a username/password
589 - $nickname: The nickname to check
590 - $password: The password to check
591 - &$authenticatedUser: set to User object if credentials match a user.
593 EndCheckPassword: After checking a username/password pair
594 - $nickname: The nickname that was checked
595 - $password: The password that was checked
596 - $authenticatedUser: User object if credentials match a user, else null.
598 StartChangePassword: Before changing a password
600 - $oldpassword: the user's old password
601 - $newpassword: the desired new password
603 EndChangePassword: After changing a password
606 StartHashPassword: Generate a hashed version of the password (like a salted crypt)
607 - &$hashed: Hashed version of the password, later put in the database
608 - $password: The password that should be hashed
609 - $profile: Profile that this password and hash belongs to. Can be null.
611 StartSetUser: Before setting the currently logged in user
614 EndSetUser: After setting the currently logged in user
617 StartSetApiUser: Before setting the current API user
620 EndSetApiUser: After setting the current API user
623 StartHasRole: Before determing if the a profile has a given role
624 - $profile: profile in question
625 - $name: name of the role in question
626 - &$has_role: does this profile have the named role?
628 EndHasRole: Before determing if the a profile has a given role
629 - $profile: profile in question
630 - $name: name of the role in question
631 - $has_role: does this profile have the named role?
633 UserDeleteRelated: Specify additional tables to delete entries from when deleting users
635 - &$related: array of DB_DataObject class names to delete entries on matching user_id.
637 GetUrlShorteners: Specify URL shorteners that are available for use
638 - &$shorteners: append your shortener to this array like so: $shorteners[shortenerName]=array('display'=>display, 'freeService'=>boolean)
640 StartShortenUrl: About to shorten a URL
641 - $url: url to be shortened
642 - $shortenerName: name of the requested shortener
643 - &$shortenedUrl: short version of the url
645 EndShortenUrl: After a URL has been shortened
646 - $url: url to be shortened
647 - $shortenerName: name of the requested shortener
648 - $shortenedUrl: short version of the url
650 StartCssLinkElement: Before a <link rel="stylesheet"..> element is written
656 EndCssLinkElement: After a <link rel="stylesheet"..> element is written
662 StartStyleElement: Before a <style...> element is written
668 EndStyleElement: After a <style...> element is written
674 StartScriptElement: Before a <script...> element is written
679 EndScriptElement: After a <script...> element is written
684 StartInlineScriptElement: Before a <script...> element is written
689 EndInlineScriptElement: After a <script...> element is written
694 StartLog: Before writing to the logs
699 EndLog: After writing to the logs
704 StartBlockProfile: when we're about to block
705 - $user: the person doing the block
706 - $profile: the person getting blocked, can be remote
708 EndBlockProfile: when a block has succeeded
709 - $user: the person doing the block
710 - $profile: the person blocked, can be remote
712 StartUnblockProfile: when we're about to unblock
713 - $user: the person doing the unblock
714 - $profile: the person getting unblocked, can be remote
716 EndUnblockProfile: when an unblock has succeeded
717 - $user: the person doing the unblock
718 - $profile: the person unblocked, can be remote
720 StartSubscribe: when a subscription is starting
721 - $profile: Profile that is subscribing
722 - $other: Profile that is being subscribed to
724 EndSubscribe: when a subscription is finished
725 - $profile: Profile that is subscribing
726 - $other: Profile that is being subscribed to
728 StartUnsubscribe: when an unsubscribe is starting
729 - $profile: Profile that is unsubscribing
730 - $other: Profile that is being unsubscribed from
732 EndUnsubscribe: when an unsubscribe is done
733 - $profile: Profile that is unsubscribing
734 - $other: Profile that is being unsubscribed from
736 StartJoinGroup: when a user is joining a group
737 - $group: the group being joined
738 - $profile: the local or remote user joining
740 EndJoinGroup: when a user finishes joining a group
741 - $group: the group being joined
742 - $profile: the local or remote user joining
744 StartLeaveGroup: when a user is leaving a group
745 - $group: the group being left
746 - $profile: the local or remote user leaving
748 EndLeaveGroup: when a user has left a group
749 - $group: the group being left
750 - $profile: the local or remote user leaving
752 StartShowContentLicense: Showing the default license for content
753 - $action: the current action
755 EndShowContentLicense: Showing the default license for content
756 - $action: the current action
758 GetImTransports: Get IM transports that are available
759 - &$transports: append your transport to this array like so: $transports[transportName]=array('display'=>display)
761 NormalizeImScreenname: Normalize an IM screenname
762 - $transport: transport the screenname is on
763 - &$screenname: screenname to be normalized
765 ValidateImScreenname: Validate an IM screenname
766 - $transport: transport the screenname is on
767 - $screenname: screenname to be validated
768 - $valid: is the screenname valid?
770 SendImConfirmationCode: Send a confirmation code to confirm a user owns an IM screenname
771 - $transport: transport the screenname exists on
772 - $screenname: screenname being confirmed
773 - $code: confirmation code for confirmation URL
774 - $user: user requesting the confirmation
776 StartUserRegister: When a new user is being registered
777 - $profile: Profile object with new profile data (no ID yet)
779 EndUserRegister: When a new user has been registered
780 - $profile: Profile object with new profile data
782 StartRobotsTxt: Before outputting the robots.txt page
783 - &$action: RobotstxtAction being shown
785 EndRobotsTxt: After the default robots.txt page (good place for customization)
786 - &$action: RobotstxtAction being shown
788 StartGetProfileUri: When determining the canonical URI for a given profile
789 - $profile: the current profile
792 EndGetProfileUri: After determining the canonical URI for a given profile
793 - $profile: the current profile
796 StartGetProfileAcctUri: Get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
797 - $profile: Profile of user we want to get acct: URI for
798 - &$acct: string with the resulting acct: uri
800 EndGetProfileAcctUri: Last attempts to get the acct: URI for a Profile (or throw ProfileNoAcctUriException)
801 - $profile: Profile of user we want to get acct: URI for
802 - &$acct: string with the resulting acct: uri
804 StartFavorNotice: Saving a notice as a favorite
805 - $profile: profile of the person faving (can be remote!)
806 - $notice: notice being faved
807 - &$fave: Favor object; null to start off with, but feel free to override.
809 EndFavorNotice: After saving a notice as a favorite
810 - $profile: profile of the person faving (can be remote!)
811 - $notice: notice being faved
813 StartDisfavorNotice: Saving a notice as a favorite
814 - $profile: profile of the person faving (can be remote!)
815 - $notice: notice being faved
816 - &$result: result of the disfavoring (if you override)
818 EndDisfavorNotice: After saving a notice as a favorite
819 - $profile: profile of the person faving (can be remote!)
820 - $notice: notice being faved
822 StartFavorNoticeForm: starting the data in the form for favoring a notice
823 - $FavorForm: the favor form being shown
824 - $notice: notice being favored
826 EndFavorNoticeForm: Ending the data in the form for favoring a notice
827 - $FavorForm: the favor form being shown
828 - $notice: notice being favored
830 StartDisFavorNoticeForm: starting the data in the form for disfavoring a notice
831 - $DisfavorForm: the disfavor form being shown
832 - $notice: notice being difavored
834 EndDisFavorNoticeForm: Ending the data in the form for disfavoring a notice
835 - $DisfavorForm: the disfavor form being shown
836 - $notice: notice being disfavored
838 StartFindMentions: start finding mentions in a block of text
839 - $sender: sender profile
840 - $text: plain text version of the notice
841 - &$mentions: mentions found so far. Array of arrays; each array
842 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
843 'title' (title of the link), 'position' (position of the text to
844 replace), 'text' (text to replace)
846 EndFindMentions: end finding mentions in a block of text
847 - $sender: sender profile
848 - $text: plain text version of the notice
849 - &$mentions: mentions found so far. Array of arrays; each array
850 has 'mentioned' (array of mentioned profiles), 'url' (url to link as),
851 'title' (title of the link), 'position' (position of the text to
852 replace), 'text' (text to replace)
854 StartShowSubscriptionsContent: before showing the subscriptions content
855 - $action: the current action
857 EndShowSubscriptionsContent: after showing the subscriptions content
858 - $action: the current action
860 StartShowUserGroupsContent: before showing the user groups content
861 - $action: the current action
863 EndShowUserGroupsContent: after showing the user groups content
864 - $action: the current action
866 StartShowAllContent: before showing the all (you and friends) content
867 - $action: the current action
869 EndShowAllContent: after showing the all (you and friends) content
870 - $action: the current action
872 StartShowSubscriptionsMiniList: at the start of subscriptions mini list
873 - $action: the current action
875 EndShowSubscriptionsMiniList: at the end of subscriptions mini list
876 - $action: the current action
878 StartShowGroupsMiniList: at the start of groups mini list
879 - $action: the current action
881 EndShowGroupsMiniList: at the end of groups mini list
882 - $action: the current action
884 StartDeleteUserForm: starting the data in the form for deleting a user
885 - $action: action being shown
886 - $user: user being deleted
888 EndDeleteUserForm: Ending the data in the form for deleting a user
889 - $action: action being shown
890 - $user: user being deleted
892 StartDeleteUser: handling the post for deleting a user
893 - $action: action being shown
894 - $user: user being deleted
896 EndDeleteUser: handling the post for deleting a user
897 - $action: action being shown
898 - $user: user being deleted
900 StartNoticeAsActivity: before converting a notice to an activity
901 - $notice: notice being converted
902 - &$activity: initially empty activity
904 EndNoticeAsActivity: after converting a notice to an activity (good time to customize!)
905 - $notice: notice being converted
906 - &$activity: activity, now more-or-less full
908 StartNoticeSaveWeb: before saving a notice through the Web interface
909 - $action: action being executed (instance of NewNoticeAction)
910 - &$authorId: integer ID of the author
911 - &$text: text of the notice
912 - &$options: additional options (location, replies, etc.)
914 EndNoticeSaveWeb: after saving a notice through the Web interface
915 - $action: action being executed (instance of NewNoticeAction)
916 - $notice: notice that was saved
918 StartRssEntryArray: at the start of copying a notice to an array
919 - $notice: the notice being copied
920 - &$entry: the entry (empty at beginning)
922 EndRssEntryArray: at the end of copying a notice to an array
923 - $notice: the notice being copied
924 - &$entry: the entry, with all the fields filled up
926 NoticeDeleteRelated: at the beginning of deleting related fields to a notice
927 - $notice: notice being deleted
929 StartShowHeadTitle: when beginning to show the <title> element
930 - $action: action being shown
932 EndShowHeadTitle: when done showing the <title>
933 - $action: action being shown
935 StartShowPageTitle: when beginning to show the page title <h1>
936 - $action: action being shown
938 EndShowPageTitle: when done showing the page title <h1>
939 - $action: action being shown
941 StartDeleteOwnNotice: when a user starts to delete their own notice
942 - $user: the user doing the delete
943 - $notice: the notice being deleted
945 EndDeleteOwnNotice: when a user has deleted their own notice
946 - $user: the user doing the delete
947 - $notice: the notice being deleted
949 StartShowFeedLinkList: before showing the feed list in the sidebar
950 - $action: action being executed
951 - $feeds: list of feeds to show
953 EndShowFeedLinkList: after showing the feed list in the sidebar
954 - $action: action being executed
955 - $feeds: list of feeds shown
957 StartShowFeedLink: before showing an individual feed item
958 - $action: action being executed
959 - $feed: feed to show
961 EndShowFeedLink: after showing an individual feed
962 - $action: action being executed
963 - $feed: feed to show
965 StartShowNoticeForm: before showing the notice form (before <form>)
966 - $action: action being executed
968 EndShowNoticeForm: after showing the notice form (after <form>)
969 - $action: action being executed
971 StartGrantRole: when a role is being assigned
972 - $profile: profile that will have the role
973 - $role: string name of the role
975 EndGrantRole: when a role has been successfully assigned
976 - $profile: profile that will have the role
977 - $role: string name of the role
979 StartRevokeRole: when a role is being revoked
980 - $profile: profile that will lose the role
981 - $role: string name of the role
983 EndRevokeRole: when a role has been revoked
984 - $profile: profile that lost the role
985 - $role: string name of the role
987 StartAtomPubNewActivity: When a new activity comes in through Atom Pub API
988 - &$activity: received activity
989 - $user: user publishing the entry
990 - &$notice: notice created; initially null, can be set
992 EndAtomPubNewActivity: When a new activity comes in through Atom Pub API
993 - $activity: received activity
994 - $user: user publishing the entry
995 - $notice: notice that was created
997 AdminPanelCheck: When checking whether the current user can access a given admin panel
998 - $name: Name of the admin panel
999 - &$isOK: Boolean whether the user is allowed to use the panel
1001 StartAdminPanelNav: Before displaying the first item in the list of admin panels
1002 - $nav The AdminPanelNav widget
1004 EndAdminPanelNav: After displaying the last item in the list of admin panels
1005 - $nav The AdminPanelNav widget
1007 StartActivityObjectFromNotice: When converting a notice to an activity:object
1008 - $notice: The notice being converted
1009 - &$object: The resulting object. Fill this and return false to override defaults.
1011 EndActivityObjectFromNotice: After converting a notice to an activity:object
1012 - $notice: The notice being converted
1013 - &$object: The resulting object. Can be edited
1015 StartActivityObjectFromProfile: When converting a profile to an activity:object
1016 - $profile: The profile being converted
1017 - &$object: The (empty) object. Fill it up and return false to override defaults.
1019 EndActivityObjectFromProfile: After converting a profile to an activity:object
1020 - $profile: The profile being converted
1021 - &$object: The finished object. Can be tweaked
1023 StartActivityObjectFromGroup: When converting a group to an activity:object
1024 - $group: The group being converted
1025 - &$object: The (empty) object. Fill and return false to override.
1027 EndActivityObjectFromGroup: After converting a group to an activity:object
1028 - $group: The group being converted
1029 - &$object: The finished object. Tweak as needed.
1031 StartImportActivity: when we start to import an activity
1032 - $user: User to make the author import
1033 - $author: Author of the feed; good for comparisons
1034 - $activity: The current activity
1035 - $trusted: How "trusted" the process is
1036 - &$done: Return value; whether to continue
1038 EndImportActivity: when we finish importing an activity
1039 - $user: User to make the author import
1040 - $author: Author of the feed; good for comparisons
1041 - $activity: The current activity
1042 - $trusted: How "trusted" the process is
1044 StartProfileSettingsActions: when we're showing account-management action list
1045 - $action: Action being shown (use for output)
1047 EndProfileSettingsActions: when we're showing account-management action list
1048 - $action: Action being shown (use for output)
1050 StartOpenNoticeListItemElement: Before the opening <li> of a notice list element
1051 - $nli: The notice list item being shown
1053 EndOpenNoticeListItemElement: After the opening <li> of a notice list element
1054 - $nli: The notice list item being shown
1056 StartCloseNoticeListItemElement: Before the closing </li> of a notice list element
1057 - $nli: The notice list item being shown
1059 EndCloseNoticeListItemElement: After the closing </li> of a notice list element
1060 - $nli: The notice list item being shown
1062 StartGroupEditFormData: Beginning the group edit form entries
1063 - $form: The form widget being shown
1065 EndGroupEditFormData: Ending the group edit form entries
1066 - $form: The form widget being shown
1068 StartGroupSave: After initializing but before saving a group
1069 - &$group: group about to be saved
1071 EndGroupSave: After saving a group, aliases, and first member
1072 - $group: group that was saved
1074 StartInterpretCommand: Before running a command
1075 - $cmd: First word in the string, 'foo' in 'foo argument'
1076 - $arg: Argument, if any, like 'argument' in 'foo argument'
1077 - $user: User who issued the command
1078 - &$result: Resulting command; you can set this!
1080 EndInterpretCommand: Before running a command
1081 - $cmd: First word in the string, 'foo' in 'foo argument'
1082 - $arg: Argument, if any, like 'argument' in 'foo argument'
1083 - $user: User who issued the command
1084 - $result: Resulting command
1086 StartGroupActionsList: Start the list of actions on a group profile page (after <ul>, before first <li>)
1087 - $action: action being executed (for output and params)
1088 - $group: group for the page
1090 EndGroupActionsList: End the list of actions on a group profile page (before </ul>, after last </li>)
1091 - $action: action being executed (for output and params)
1092 - $group: group for the page
1094 StartGroupProfileElements: Start showing stuff about the group on its profile page
1095 - $action: action being executed (for output and params)
1096 - $group: group for the page
1098 EndGroupProfileElements: Start showing stuff about the group on its profile page
1099 - $action: action being executed (for output and params)
1100 - $group: group for the page
1102 StartShowProfileTagContent: When showing a people tag page
1103 - $action: action being executed (for output and params)
1105 EndShowProfileTagContent: After showing the contents of a people tag page
1106 - $action: action being executed (for output and params)
1108 StartShowTaggedProfilesMiniList: at the start of mini list of tagged profiles
1109 - $action: action being executed (for output and params)
1111 EndShowTaggedProfilesMiniList: at the end of mini list of tagged profiles
1112 - $action: action being executed (for output and params)
1114 StartShowProfileTagSubscribersMiniList: at the start of mini list of people tag subscribers
1115 - $action: action being executed (for output and params)
1117 EndShowProfileTagSubscribersMiniList: at the end of mini list of people tag subscribers
1118 - $action: action being executed (for output and params)
1120 StartTagProfileAction: When starting to show profile tagging page
1121 - $action: action being executed (for output and params)
1122 - $profile: profile being tagged
1124 EndTagProfileAction: After showing profile tagging page
1125 - $action: action being executed (for output and params)
1126 - $profile: profile being tagged
1128 StartProfileCompletionSearch: When starting a profile search for autocompletion
1129 - $action: action being executed (for output and params)
1130 - &$profile: result Profile objects
1131 - $search_engine: the search engine
1133 EndProfileCompletionSearch: After search results for profile autocompletion have been found
1134 - $action: profilec completion action
1135 - &$profile: current result Profile objects
1136 - $search_engine: The search engine object
1138 StartShowTagProfileForm: When showing people tagging form
1139 - $action: action being executed (for output and params)
1140 - $profile: profile being tagged
1142 EndShowTagProfileForm: After showing people tagging form
1143 - $action: action being executed (for output and params)
1144 - $profile: profile being tagged
1146 StartSavePeopletags: When starting to save people tags
1147 - $action: action being executed (for output and params)
1148 - $tagstring: string input, a list of tags
1150 EndSavePeopletags: After saving people tags
1151 - $action: action being executed (for output and params)
1152 - $tagstring: string input, a list of tags
1154 StartProfiletagGetUri: when generating the Uri for a people tag
1155 - $profile_list: the people tag, a Profile_list object
1158 EndProfiletagGetUri: after generating the uri for a people tag
1159 - $profile_list: the people tag, a Profile_list object
1162 StartUserPeopletagHomeUrl: when generating the homepage url for a people tag
1163 - $profile_list: the people tag, a Profile_list object
1166 EndUserPeopletagHomeUrl: after generating the homepage url for a people tag
1167 - $profile_list: the people tag, a Profile_list object
1170 StartProfiletagPermalink: when generating the permalink url for a people tag
1171 - $profile_list: the people tag, a Profile_list object
1174 EndProfiletagPermalink: after generating the permalink url for a people tag
1175 - $profile_list: the people tag, a Profile_list object
1178 StartTagProfile: when tagging a profile
1179 - $tagger: profile tagging
1180 - $tagged: profile being tagged
1183 EndTagProfile: after tagging a profile
1184 - $newtag: the newly created Profile_tag object
1186 StartUntagProfile: when deleting a people tag
1187 - $ptag: the Profile_tag object being deleted
1189 EndUntagProfile: after deleting a people tag
1190 - $orig: a copy of the deleted Profile_tag object
1192 StartSubscribePeopletag: when subscribing to a people tag
1193 - $peopletag: Profile_list object being subscribed to
1194 - $profile: subscriber's profile
1196 EndSubscribePeopletag: after subscribing to a people tag
1197 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1198 - $profile: subscriber's profile
1200 StartUnsubscribePeopletag: when unsubscribing to a people tag
1201 - $profile_list: the people tag, a Profile_list object: Profile_list object being subscribed to
1202 - $profile: subscriber's profile
1204 EndUnsubscribePeopletag: after unsubscribing to a people tag
1205 - $peopletag: Profile_list object being subscribed to
1206 - $profile: subscriber's profile
1208 StartActivityObjectFromPeopletag: while starting to create an ActivityObject from a people tag
1209 - $profile_list: the people tag, a Profile_list object
1210 - &$object: activity object
1212 EndActivityObjectFromPeopletag: after making an ActivityObject from a people tag
1213 - $profile_list: the people tag, a Profile_list object
1214 - &$object: activity object
1216 StartPeopletagGroupNav: Showing the people tag nav menu
1217 - $menu: the menu widget; use $menu->action for output
1219 EndPeopletagGroupNav: after showing the people tag nav menu
1220 - $menu: the menu widget; use $menu->action for output
1222 StartShowPeopletagItem: when showing a people tag
1223 - $widget: PeopletagListItem widget
1225 EndShowPeopletagItem: after showing a people tag
1226 - $widget: PeopletagListItem widget
1228 StartSubscribePeopletagForm: when showing people tag subscription form
1229 - $action: action being executed (for output and params)
1230 - $peopletag: people tag being subscribed to
1232 EndSubscribePeopletagForm: after showing the people tag subscription form
1233 - $action: action being executed (for output and params)
1234 - $peopletag: people tag being subscribed to
1236 StartShowPeopletags: when showing a textual list of people tags
1237 - $widget: PeopletagsWidget; use $widget->out for output
1238 - $tagger: profile of the tagger
1239 - $tagged: profile tagged
1241 EndShowPeopletags: after showing a textual list of people tags
1242 - $widget: PeopletagsWidget; use $widget->out for output
1243 - $tagger: profile of the tagger
1244 - $tagged: profile tagged
1246 StartProfileListItemTags: when showing people tags in a profile list item widget
1247 - $widget: ProfileListItem widget
1249 EndProfileListItemTags: after showing people tags in a profile list item widget
1250 - $widget: ProfileListItem widget
1252 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)
1253 - $obj: ActivityObject
1254 - $out: XMLOutputter to append custom output
1256 EndActivityObjectOutputAtom: Called at end of Atom XML output generation for ActivityObject chunks, just inside the </activity:object>
1257 - $obj: ActivityObject
1258 - $out: XMLOutputter to append custom output
1260 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)
1261 - $obj ActivityObject
1262 - &$out: array to be serialized; you're free to modify it
1264 EndActivityObjectOutputJson: Called at end of JSON output generation for ActivityObject chunks: the array has not yet been filled out.
1265 - $obj ActivityObject
1266 - &$out: array to be serialized; you're free to modify it
1268 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.
1270 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1272 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.
1274 - &$ni: in/out array mapping profile IDs to constants: NOTICE_INBOX_SOURCE_SUB etc
1276 StartDefaultLocalNav: When showing the default local nav
1278 - $user: current user
1280 EndDefaultLocalNav: When showing the default local nav
1282 - $user: current user
1284 StartShowAccountProfileBlock: When showing the profile block for an account
1285 - $out: XMLOutputter to append custom output
1286 - $profile: the profile being shown
1288 EndShowAccountProfileBlock: After showing the profile block for an account
1289 - $out: XMLOutputter to append custom output
1290 - $profile: the profile being shown
1292 StartShowGroupProfileBlock: When showing the profile block for a group
1293 - $out: XMLOutputter to append custom output
1294 - $profile: the profile being shown
1296 EndShowGroupProfileBlock: After showing the profile block for a group
1297 - $out: XMLOutputter to append custom output
1298 - $group: the group being shown
1300 StartShowThreadedNoticeTail: when showing the replies etc. to a notice
1301 - $nli: parent noticelistitem
1302 - $notice: parent notice
1303 - &$children: list of children
1305 EndShowThreadedNoticeTail: when showing the replies etc. to a notice
1306 - $nli: parent noticelistitem
1307 - $notice: parent notice
1308 - $children: list of children
1310 StartShowThreadedNoticeSub: when showing a reply to a notice
1311 - $nli: parent noticelistitem
1312 - $parent: parent notice
1313 - $child: child notice
1315 EndShowThreadedNoticeSub: when showing a reply to a notice
1316 - $nli: parent noticelistitem
1317 - $parent: parent notice
1318 - $child: child notice
1320 StartAddEmailAddress: when adding an email address through the Web UI
1321 - $user: user getting the new address
1322 - $email: email being added
1324 EndAddEmailAddress: done adding an email address through the Web UI
1325 - $user: user getting the new address
1326 - $email: email being added
1328 StartValidateEmailInvite: when validating an email address for invitations
1329 - $user: user doing the invite
1330 - $email: email address
1331 - &$valid: flag for if it's valid; can be modified
1333 EndValidateEmailInvite: after validating an email address for invitations
1334 - $user: user doing the invite
1335 - $email: email address
1336 - &$valid: flag for if it's valid; can be modified
1338 StartLocalURL: before resolving a local url for an action
1339 - &$action: action to find a path for
1340 - &$paramsi: parameters to pass to the action
1341 - &$fragment: any url fragement
1342 - &$addSession: whether to add session variable
1343 - &$url: resulting URL to local resource
1345 EndLocalURL: before resolving a local url for an action
1346 - &$action: action to find a path for
1347 - &$paramsi: parameters to pass to the action
1348 - &$fragment: any url fragement
1349 - &$addSession: whether to add session variable
1350 - &$url: resulting URL to local resource
1352 StartProfileGetAvatar: When getting an avatar for a profile
1354 - $size: size of the avatar
1357 EndProfileGetAvatar: After getting an avatar for a profile
1359 - $size: size of the avatar
1362 StartRegisterSuccess: Before showing the registration success message
1363 - $action: the registration action
1365 StartRegisterSuccess: After showing the registration success message
1366 - $action: the registration action
1368 StartDocFileForTitle: Before searching for a doc or mail template
1369 - $title: Title we're looking for
1370 - &$paths: Paths we're searching
1371 - &$filename: Filename so far (set this if you want)
1373 EndDocFileForTitle: After searching for a doc or mail template
1374 - $title: Title we looked for
1375 - $paths: Paths we searched
1376 - &$filename: Filename so far (set this if you want)
1378 StartReadWriteTables: when noting which tables must be read-write, even on read-only actions
1379 - &$tables: list of table names
1380 - &$rwdb: read-write database URI
1382 EndReadWriteTables: after noting which tables must be read-write, even on read-only actions
1383 - $tables: list of table names
1384 - $rwdb: read-write database URI
1386 StartShowInviteForm: Right before displaying the invitations form
1387 - $action: invitation action
1389 EndShowInviteForm: After displaying the invitations form
1390 - $action: invitation action
1392 StartSendInvitations: Right before sending invitations
1393 - $action: invitation action
1395 EndSendInvitations: Right after sending invitations
1396 - $action: invitation action
1398 StartShowInvitationSuccess: Right before showing invitations success msg
1399 - $action: invitation action
1401 EndShowInvitationSuccess: After showing invitations success msg
1402 - $action: invitation action
1404 StartUpgrade: when starting a site upgrade
1406 EndUpgrade: when ending a site upgrade; good place to do your own upgrades
1408 HaveIMPlugin: is there an IM plugin loaded?
1409 - &$haveIMPlugin: set me to true if you're loaded!
1411 StartShowNoticeOptionItems: Before showing first controls in a notice list item; inside the div
1412 - $nli: NoticeListItem being shown
1414 EndShowNoticeOptionItems: After showing last controls in a notice list item; inside the div
1415 - $nli: NoticeListItem being shown
1417 StartNoticeInScope: Before checking if a notice should be visible to a user
1418 - $notice: The notice to check
1419 - $profile: The profile to check for scope
1420 - &$bResult: The boolean result; fill this in if you want to skip
1422 EndNoticeInScope: After checking if a notice should be visible to a user
1423 - $notice: The notice to check
1424 - $profile: The profile to check for scope
1425 - &$bResult: The boolean result; overwrite this if you so desire
1427 StartNoticeListPrefill: Before pre-filling a list of notices with extra data
1428 - &$notices: Notices to be pre-filled
1429 - $avatarSize: The avatar size for the list
1431 EndNoticeListPrefill: After pre-filling a list of notices with extra data
1432 - &$notices: Notices that were pre-filled
1433 - &$profiles: Profiles that were pre-filled
1434 - $avatarSize: The avatar size for the list
1436 OtherAccountProfiles: Hook to add account profiles to a user account profile block
1437 - $profile: the Profile being shown
1438 - &$others: Modifiable array of profile info arrays. Each one has the following fields:
1439 href: link to the profile
1440 text: text for the profile
1441 image: mini image for the profile